ELF>� @ah@8@�Zh�Zh �]h�]��]�`h �]h�]��]����$$P�tdXhXhXh��Q�tdR�td�]h�]��]�HHGNU�, g�le���1�n� �E h �@#% ���g^g^�g^!g^#g^���qs| Dx㚭�(j;g^g^�g^�g^�g^�g^�g^�g^�g^ U  , F"'��� p + � �  T � } � i � � � �� � � � �� �  � � P   � ` � � 5 0 ^ @ � __gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClasses__nvrtc_builtins__12_1_getBuiltinHeader__nvrtc_builtins__12_1_getArchBuiltins50__nvrtc_builtins__12_1_getArchBuiltins52__nvrtc_builtins__12_1_getArchBuiltins53__nvrtc_builtins__12_1_getArchBuiltins60__nvrtc_builtins__12_1_getArchBuiltins61__nvrtc_builtins__12_1_getArchBuiltins62__nvrtc_builtins__12_1_getArchBuiltins70__nvrtc_builtins__12_1_getArchBuiltins72__nvrtc_builtins__12_1_getArchBuiltins75__nvrtc_builtins__12_1_getArchBuiltins80__nvrtc_builtins__12_1_getArchBuiltins86__nvrtc_builtins__12_1_getArchBuiltins87__nvrtc_builtins__12_1_getArchBuiltins89__nvrtc_builtins__12_1_getArchBuiltins90__nvrtc_builtins__12_1_getArchBuiltinslibstdc++.so.6libm.so.6libgcc_s.so.1libc.so.6libnvrtc-builtins.so.12.1GLIBC_2.2.5a�(a�'ui A�]�� �]�` �]��]��_��_��_��_��_�H��H�EV�H��t�#H����5RV��%TV�@�%V�f��%*V�f�H�=AV�H�AV�UH)�H��H��vH��U�H��t ]��fD]�@f.�H�=V�H�5�U�UH)�H��H��H��H��?H�H��tH��U�H��t ]��f�]�@f.��=�U�u'H�=�U�UH��t H�=RS��E����H���]��U���@f.�H�=!S�H�?u �^���fDH�!U�H��t�UH����]�@���H��)IH��ÐH��)IH��ÐH��&H�B,IÐH��&H�2SKÐH��&H�"zMÐH�XOH��OÐH�XOH�b�QÐH�XOH��?TÐH��2H��VÐH��2H���XÐH��2H�"�ZÐH��8H��&]ÐH��8H�B__ÐH��8H�җaÐH��8H�b�cÐH�@CH��fÐ��2t[��4t^��5ta��<td��=tg��>tj��Ftm��Htp��Kts��Ptv��Vty��Wt|��Yt��Zu ����DH�1��fD������������������������������������������������� ������������f.���2t[��4t^��5ta��<td��=tg��>tj��Ftm��Htp��Kts��Ptv��Vty��Wt|��Yt��Zu �����DH�1��fD�������������������� ������������#����+����3����;����C����K���H��H���/* * Copyright 1993-2016 NVIDIA Corporation. All rights reserved. * * NOTICE TO LICENSEE: * * This source code and/or documentation ("Licensed Deliverables") are * subject to NVIDIA intellectual property rights under U.S. and * international Copyright laws. * * These Licensed Deliverables contained herein is PROPRIETARY and * CONFIDENTIAL to NVIDIA and is being provided under the terms and * conditions of a form of NVIDIA software license agreement by and * between NVIDIA and Licensee ("License Agreement") or electronically * accepted by Licensee. Notwithstanding any terms or conditions to * the contrary in the License Agreement, reproduction or disclosure * of the Licensed Deliverables to any third party without the express * written consent of NVIDIA is prohibited. * * NOTWITHSTANDING ANY TERMS OR CONDITIONS TO THE CONTRARY IN THE * LICENSE AGREEMENT, NVIDIA MAKES NO REPRESENTATION ABOUT THE * SUITABILITY OF THESE LICENSED DELIVERABLES FOR ANY PURPOSE. IT IS * PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY OF ANY KIND. * NVIDIA DISCLAIMS ALL WARRANTIES WITH REGARD TO THESE LICENSED * DELIVERABLES, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY, * NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE. * NOTWITHSTANDING ANY TERMS OR CONDITIONS TO THE CONTRARY IN THE * LICENSE AGREEMENT, IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY * SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, OR ANY * DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE * OF THESE LICENSED DELIVERABLES. * * U.S. Government End Users. These Licensed Deliverables are a * "commercial item" as that term is defined at 48 C.F.R. 2.101 (OCT * 1995), consisting of "commercial computer software" and "commercial * computer software documentation" as such terms are used in 48 * C.F.R. 12.212 (SEPT 1995) and is provided to the U.S. Government * only as a commercial end item. Consistent with 48 C.F.R.12.212 and * 48 C.F.R. 227.7202-1 through 227.7202-4 (JUNE 1995), all * U.S. Government End Users acquire the Licensed Deliverables with * only those rights set forth herein. * * Any use of the Licensed Deliverables in individual and commercial * software must include, in the user documentation and internal * comments to the code, the above Disclaimer and U.S. Government End * Users Notice. */ #define __CUDACC__ 1 #define __CUDANVVM__ 1 #if !defined(__cplusplus) #error "unexpected!" #endif #if defined(__LP64__) typedef unsigned long size_t; typedef long int ptrdiff_t; #else typedef unsigned long long size_t; typedef long long int ptrdiff_t; #endif typedef long clock_t; #ifndef NULL #define NULL 0 #endif #if defined(__cplusplus) extern "C" { #endif __attribute__((device)) int __nvvm_reflect(const char*); #if defined(__cplusplus) } #endif #if !defined(__CUDA_RUNTIME_H__) #define __CUDA_RUNTIME_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_H__ #endif #if !defined(__CUDACC_RTC__) #if defined(__GNUC__) #if defined(__clang__) || (!defined(__PGIC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))) #pragma GCC diagnostic push #endif #if defined(__clang__) || (!defined(__PGIC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2))) #pragma GCC diagnostic ignored "-Wunused-function" #endif #elif defined(_MSC_VER) #pragma warning(push) #pragma warning(disable: 4820) #endif #endif #ifdef __QNX__ #if (__GNUC__ == 4 && __GNUC_MINOR__ >= 7) typedef unsigned size_t; #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_config.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_config.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_CONFIG_H__ #endif #if !defined(__HOST_CONFIG_H__) #define __HOST_CONFIG_H__ #if defined(__CUDACC__) #if defined(__CUDACC_RTC__) #define _CRTIMP #define __THROW #else #if !defined(__GNUC__) && !defined(_WIN32) #error --- !!! UNSUPPORTED COMPILER !!! --- #endif #if defined(__PGIC__) #if !defined(__GNUC__) || !defined(__LP64__) || !defined(__linux__) #error -- unsupported pgc++ configuration! pgc++ is supported only on Linux x86_64! #endif #endif #if defined(__powerpc__) #if !defined(__powerpc64__) || !defined(__LITTLE_ENDIAN__) #error -- unsupported PPC platform! Only 64-bit little endian PPC is supported! #endif #endif #if defined(__APPLE__) && defined(__MACH__) && !defined(__clang__) #error -- clang and clang++ are the only supported host compilers on Mac OS X! #endif #if !__NV_NO_HOST_COMPILER_CHECK #if defined(__ICC) #if (__ICC != 1500 && __ICC != 1600 && __ICC != 1700 && __ICC != 1800 && !(__ICC >= 1900 && __ICC <= 2021)) || !defined(__GNUC__) || !defined(__LP64__) #error -- unsupported ICC configuration! Only ICC 15.0, ICC 16.0, ICC 17.0, ICC 18.0, ICC 19.x and 20.x on Linux x86_64 are supported! The nvcc flag '-allow-unsupported-compiler' can be used to override this version check; however, using an unsupported host compiler may cause compilation failure or incorrect run time execution. Use at your own risk. #endif #endif #if defined(__powerpc__) #if defined(__ibmxl_vrm__) && !(__ibmxl_vrm__ >= 0x0d010000 && __ibmxl_vrm__ < 0x0d020000) && \ !(__ibmxl_vrm__ >= 0x10010000 && __ibmxl_vrm__ < 0x10020000) #error -- unsupported xlC version! only xlC 13.1 and 16.1 are supported. The nvcc flag '-allow-unsupported-compiler' can be used to override this version check; however, using an unsupported host compiler may cause compilation failure or incorrect run time execution. Use at your own risk. #endif #endif #if defined(__GNUC__) #if __GNUC__ > 12 #error -- unsupported GNU version! gcc versions later than 12 are not supported! The nvcc flag '-allow-unsupported-compiler' can be used to override this version check; however, using an unsupported host compiler may cause compilation failure or incorrect run time execution. Use at your own risk. #endif #if defined(__clang__) && !defined(__ibmxl_vrm__) && !defined(__ICC) && !defined(__HORIZON__) && !defined(__APPLE__) #if (__clang_major__ >= 16) || (__clang_major__ < 3) || ((__clang_major__ == 3) && (__clang_minor__ < 3)) #error -- unsupported clang version! clang version must be less than 16 and greater than 3.2 . The nvcc flag '-allow-unsupported-compiler' can be used to override this version check; however, using an unsupported host compiler may cause compilation failure or incorrect run time execution. Use at your own risk. #endif #endif #endif #if defined(_WIN32) #if _MSC_VER < 1910 || _MSC_VER >= 1940 #error -- unsupported Microsoft Visual Studio version! Only the versions between 2017 and 2022 (inclusive) are supported! The nvcc flag '-allow-unsupported-compiler' can be used to override this version check; however, using an unsupported host compiler may cause compilation failure or incorrect run time execution. Use at your own risk. #elif _MSC_VER >= 1910 && _MSC_VER < 1910 #pragma message("support for this version of Microsoft Visual Studio has been deprecated! Only the versions between 2017 and 2022 (inclusive) are supported!") #endif #endif #endif #if defined(__APPLE__) #define _CRTIMP #define _ACRTIMP #define __THROW #if defined(__BLOCKS__) #undef __BLOCKS__ #endif #elif defined(__ANDROID__) #define _CRTIMP #define _ACRTIMP #define __THROW #elif defined(__QNX__) #define _CRTIMP #define _ACRTIMP #define __THROW #elif defined(__HORIZON__) #define _CRTIMP #define _ACRTIMP #define __THROW #elif defined(__GNUC__) #define _CRTIMP #define _ACRTIMP #include <features.h> #elif defined(_WIN32) #if _MSC_VER >= 1500 #undef _USE_DECLSPECS_FOR_SAL #define _USE_DECLSPECS_FOR_SAL \ 1 #endif #if !defined(_CRT_NONSTDC_NO_WARNINGS) #define _CRT_NONSTDC_NO_WARNINGS #endif #if !defined(_CRT_SECURE_NO_WARNINGS) #define _CRT_SECURE_NO_WARNINGS #endif #if !defined(NOMINMAX) #define NOMINMAX #endif #include <crtdefs.h> #if _MSC_VER >= 1900 #include <corecrt.h> #endif #define __THROW #endif #endif #if defined(__cplusplus) && defined(__CUDA_ARCH__) && (defined(__PGIC__) || defined(__CUDACC_RTC__) || (defined(_WIN32) && defined(_MSC_VER))) #if __CUDACC_RTC__ typedef char *va_list; #else #include <cstdarg> #endif #undef va_start #undef va_end #undef va_arg #ifdef __PGIC__ #undef __builtin_va_end #define va_start(v,l) __builtin_alt_va_start(v,l) #define va_end(v) __builtin_va_end(v) #define va_arg(v,l) __builtin_alt_va_arg(v,l) #if (__cplusplus >= 201103L) #undef va_copy #define va_copy(d,s) __builtin_va_copy(d,s) #endif #else #define va_start(ap, x) (__cu_va_start(&ap, x)) #define va_end(ap) (__cu_va_end(&ap)) #define va_arg(ap, t) (*((t *)__cu_va_arg(&ap, (t *)0))) #if (_MSC_VER >= 1800) || (defined(__CUDACC_RTC__) && (__cplusplus >= 201103L)) #undef va_copy #define va_copy(apd, aps) (__cu_va_copy(&(apd), &(aps))) #endif #endif #endif #endif #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_CONFIG_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_CONFIG_H__ #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__LIBRARY_TYPES_H__) #define __LIBRARY_TYPES_H__ typedef enum cudaDataType_t { CUDA_R_16F = 2, CUDA_C_16F = 6, CUDA_R_16BF = 14, CUDA_C_16BF = 15, CUDA_R_32F = 0, CUDA_C_32F = 4, CUDA_R_64F = 1, CUDA_C_64F = 5, CUDA_R_4I = 16, CUDA_C_4I = 17, CUDA_R_4U = 18, CUDA_C_4U = 19, CUDA_R_8I = 3, CUDA_C_8I = 7, CUDA_R_8U = 8, CUDA_C_8U = 9, CUDA_R_16I = 20, CUDA_C_16I = 21, CUDA_R_16U = 22, CUDA_C_16U = 23, CUDA_R_32I = 10, CUDA_C_32I = 11, CUDA_R_32U = 12, CUDA_C_32U = 13, CUDA_R_64I = 24, CUDA_C_64I = 25, CUDA_R_64U = 26, CUDA_C_64U = 27, CUDA_R_8F_E4M3 = 28, CUDA_R_8F_E5M2 = 29, } cudaDataType; typedef enum libraryPropertyType_t { MAJOR_VERSION, MINOR_VERSION, PATCH_LEVEL } libraryPropertyType; #ifndef __cplusplus typedef enum cudaDataType_t cudaDataType_t; typedef enum libraryPropertyType_t libraryPropertyType_t; #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #ifdef __CUDACC_RTC__ #ifndef __NV_TARGET_H #define __NV_TARGET_H #if defined(__NVCC__) || defined(__CUDACC_RTC__) # define _NV_COMPILER_NVCC #elif defined(__NVCOMPILER) && __cplusplus >= 201103L # define _NV_COMPILER_NVCXX #elif defined(__clang__) && defined(__CUDA__) && defined(__CUDA_ARCH__) # define _NV_COMPILER_CLANG_CUDA #endif #if defined(__CUDACC_RTC__) # define _NV_FUNCTION_ANNOTATION __device__ #else # define _NV_FUNCTION_ANNOTATION #endif #if defined(_NV_COMPILER_NVCXX) # define _NV_BITSET_ATTRIBUTE [[nv::__target_bitset]] #else # define _NV_BITSET_ATTRIBUTE #endif #if (!defined(__ibmxl__)) && \ ((defined(__cplusplus) && __cplusplus >= 201103L) || \ (defined(_MSC_VER) && _MSVC_LANG >= 201103L)) # define _NV_TARGET_CPP11 #endif #if defined(_NV_TARGET_CPP11) namespace nv { namespace target { namespace detail { typedef unsigned long long base_int_t; constexpr base_int_t all_hosts = 1; constexpr base_int_t sm_35_bit = 1 << 1; constexpr base_int_t sm_37_bit = 1 << 2; constexpr base_int_t sm_50_bit = 1 << 3; constexpr base_int_t sm_52_bit = 1 << 4; constexpr base_int_t sm_53_bit = 1 << 5; constexpr base_int_t sm_60_bit = 1 << 6; constexpr base_int_t sm_61_bit = 1 << 7; constexpr base_int_t sm_62_bit = 1 << 8; constexpr base_int_t sm_70_bit = 1 << 9; constexpr base_int_t sm_72_bit = 1 << 10; constexpr base_int_t sm_75_bit = 1 << 11; constexpr base_int_t sm_80_bit = 1 << 12; constexpr base_int_t sm_86_bit = 1 << 13; constexpr base_int_t sm_87_bit = 1 << 14; constexpr base_int_t sm_89_bit = 1 << 15; constexpr base_int_t sm_90_bit = 1 << 16; constexpr base_int_t all_devices = sm_35_bit | sm_37_bit | sm_50_bit | sm_52_bit | sm_53_bit | sm_60_bit | sm_61_bit | sm_62_bit | sm_70_bit | sm_72_bit | sm_75_bit | sm_80_bit | sm_86_bit | sm_87_bit | sm_89_bit | sm_90_bit; struct _NV_BITSET_ATTRIBUTE target_description { base_int_t targets; _NV_FUNCTION_ANNOTATION constexpr target_description(base_int_t a) : targets(a) { } }; enum class sm_selector : base_int_t { sm_35 = 35, sm_37 = 37, sm_50 = 50, sm_52 = 52, sm_53 = 53, sm_60 = 60, sm_61 = 61, sm_62 = 62, sm_70 = 70, sm_72 = 72, sm_75 = 75, sm_80 = 80, sm_86 = 86, sm_87 = 87, sm_89 = 89, sm_90 = 90, }; _NV_FUNCTION_ANNOTATION constexpr base_int_t toint(sm_selector a) { return static_cast<base_int_t>(a); } _NV_FUNCTION_ANNOTATION constexpr base_int_t bitexact(sm_selector a) { return toint(a) == 35 ? sm_35_bit : toint(a) == 37 ? sm_37_bit : toint(a) == 50 ? sm_50_bit : toint(a) == 52 ? sm_52_bit : toint(a) == 53 ? sm_53_bit : toint(a) == 60 ? sm_60_bit : toint(a) == 61 ? sm_61_bit : toint(a) == 62 ? sm_62_bit : toint(a) == 70 ? sm_70_bit : toint(a) == 72 ? sm_72_bit : toint(a) == 75 ? sm_75_bit : toint(a) == 80 ? sm_80_bit : toint(a) == 86 ? sm_86_bit : toint(a) == 87 ? sm_87_bit : toint(a) == 89 ? sm_89_bit : toint(a) == 90 ? sm_90_bit : 0; } _NV_FUNCTION_ANNOTATION constexpr base_int_t bitrounddown(sm_selector a) { return toint(a) >= 90 ? sm_90_bit : toint(a) >= 89 ? sm_89_bit : toint(a) >= 87 ? sm_87_bit : toint(a) >= 86 ? sm_86_bit : toint(a) >= 80 ? sm_80_bit : toint(a) >= 75 ? sm_75_bit : toint(a) >= 72 ? sm_72_bit : toint(a) >= 70 ? sm_70_bit : toint(a) >= 62 ? sm_62_bit : toint(a) >= 61 ? sm_61_bit : toint(a) >= 60 ? sm_60_bit : toint(a) >= 53 ? sm_53_bit : toint(a) >= 52 ? sm_52_bit : toint(a) >= 50 ? sm_50_bit : toint(a) >= 37 ? sm_37_bit : toint(a) >= 35 ? sm_35_bit : 0; } _NV_FUNCTION_ANNOTATION constexpr target_description is_exactly(sm_selector a) { return target_description(bitexact(a)); } _NV_FUNCTION_ANNOTATION constexpr target_description provides(sm_selector a) { return target_description(~(bitrounddown(a) - 1) & all_devices); } _NV_FUNCTION_ANNOTATION constexpr target_description operator&&(target_description a, target_description b) { return target_description(a.targets & b.targets); } _NV_FUNCTION_ANNOTATION constexpr target_description operator||(target_description a, target_description b) { return target_description(a.targets | b.targets); } _NV_FUNCTION_ANNOTATION constexpr target_description operator!(target_description a) { return target_description(~a.targets & (all_devices | all_hosts)); } } using detail::target_description; using detail::sm_selector; constexpr target_description is_host = target_description(detail::all_hosts); constexpr target_description is_device = target_description(detail::all_devices); constexpr target_description any_target = target_description(detail::all_hosts | detail::all_devices); constexpr target_description no_target = target_description(0); constexpr sm_selector sm_35 = sm_selector::sm_35; constexpr sm_selector sm_37 = sm_selector::sm_37; constexpr sm_selector sm_50 = sm_selector::sm_50; constexpr sm_selector sm_52 = sm_selector::sm_52; constexpr sm_selector sm_53 = sm_selector::sm_53; constexpr sm_selector sm_60 = sm_selector::sm_60; constexpr sm_selector sm_61 = sm_selector::sm_61; constexpr sm_selector sm_62 = sm_selector::sm_62; constexpr sm_selector sm_70 = sm_selector::sm_70; constexpr sm_selector sm_72 = sm_selector::sm_72; constexpr sm_selector sm_75 = sm_selector::sm_75; constexpr sm_selector sm_80 = sm_selector::sm_80; constexpr sm_selector sm_86 = sm_selector::sm_86; constexpr sm_selector sm_87 = sm_selector::sm_87; constexpr sm_selector sm_89 = sm_selector::sm_89; constexpr sm_selector sm_90 = sm_selector::sm_90; using detail::is_exactly; using detail::provides; } } #endif #ifndef _NV__TARGET_MACROS #define _NV__TARGET_MACROS #if defined(__GNUC__) #pragma GCC system_header #endif #if defined(_NV_TARGET_CPP11) # define _NV_EVAL1(...) __VA_ARGS__ # define _NV_EVAL(...) _NV_EVAL1(__VA_ARGS__) #else # define _NV_EVAL1(x) x # define _NV_EVAL(x) _NV_EVAL1(x) #endif #define _NV_CONCAT_EVAL1(l, r) _NV_EVAL(l ## r) #define _NV_CONCAT_EVAL(l, r) _NV_CONCAT_EVAL1(l, r) #define _NV_IF_0(t, f) f #define _NV_IF_1(t, f) t #define _NV_IF_BIT(b) _NV_EVAL(_NV_IF_##b) #define _NV_IF__EVAL(fn, t, f) _NV_EVAL(fn(t, f)) #define _NV_IF_EVAL(cond, t, f) _NV_IF__EVAL(_NV_IF_BIT(cond), t, f) #define _NV_IF1(cond, t, f) _NV_IF_EVAL(cond, t, f) #define _NV_IF(cond, t, f) _NV_IF1(_NV_EVAL(cond), _NV_EVAL(t), _NV_EVAL(f)) #if defined(_NV_TARGET_CPP11) #define _NV_ARG32(...) _NV_EVAL(_NV_ARG32_0(__VA_ARGS__)) #define _NV_ARG32_0( \ _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, \ _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, ...) _31 #define _NV_HAS_COMMA(...) _NV_ARG32(__VA_ARGS__, \ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0) #define _NV_TRIGGER_PARENTHESIS_(...) , #define _NV_ISEMPTY(...) \ _NV_ISEMPTY0( \ \ _NV_EVAL(_NV_HAS_COMMA(__VA_ARGS__)), \ \ _NV_EVAL(_NV_HAS_COMMA(_NV_TRIGGER_PARENTHESIS_ __VA_ARGS__)), \ \ _NV_EVAL(_NV_HAS_COMMA(__VA_ARGS__ ( ))), \ \ _NV_EVAL(_NV_HAS_COMMA(_NV_TRIGGER_PARENTHESIS_ __VA_ARGS__ ( ))) \ ) #define _NV_PASTE5(_0, _1, _2, _3, _4) _0 ## _1 ## _2 ## _3 ## _4 #define _NV_ISEMPTY0(_0, _1, _2, _3) _NV_HAS_COMMA(_NV_PASTE5(_NV_IS_EMPTY_CASE_, _0, _1, _2, _3)) #define _NV_IS_EMPTY_CASE_0001 , #define _NV_REMOVE_PAREN(...) _NV_REMOVE_PAREN1(__VA_ARGS__) #define _NV_REMOVE_PAREN1(...) _NV_STRIP_PAREN(_NV_IF(_NV_TEST_PAREN(__VA_ARGS__), (_NV_STRIP_PAREN(__VA_ARGS__)), (__VA_ARGS__))) #define _NV_STRIP_PAREN2(...) __VA_ARGS__ #define _NV_STRIP_PAREN1(...) _NV_STRIP_PAREN2 __VA_ARGS__ #define _NV_STRIP_PAREN(...) _NV_STRIP_PAREN1(__VA_ARGS__) #define _NV_TEST_PAREN(...) _NV_TEST_PAREN1(__VA_ARGS__) #define _NV_TEST_PAREN1(...) _NV_TEST_PAREN2(_NV_TEST_PAREN_DUMMY __VA_ARGS__) #define _NV_TEST_PAREN2(...) _NV_TEST_PAREN3(_NV_CONCAT_EVAL(_, __VA_ARGS__)) #define _NV_TEST_PAREN3(...) _NV_EVAL(_NV_FIRST_ARG(__VA_ARGS__)) #define __NV_PAREN_YES 1 #define __NV_PAREN_NO 0 #define _NV_TEST_PAREN_DUMMY(...) _NV_PAREN_YES #define __NV_TEST_PAREN_DUMMY __NV_PAREN_NO, #define _NV_FIRST_ARG1(x, ...) x #define _NV_FIRST_ARG(x, ...) _NV_FIRST_ARG1(x) #define _NV_REMOVE_FIRST_ARGS1(...) __VA_ARGS__ #define _NV_REMOVE_FIRST_ARGS(x, ...) _NV_REMOVE_FIRST_ARGS1(__VA_ARGS__) #define _NV_NUM_ARGS(...) _NV_NUM_ARGS0(__VA_ARGS__) #define _NV_NUM_ARGS0(...) _NV_EVAL(_NV_NUM_ARGS1(__VA_ARGS__)) #define _NV_NUM_ARGS1(...) _NV_IF(_NV_ISEMPTY(__VA_ARGS__), 0, _NV_NUM_ARGS2(__VA_ARGS__)) #define _NV_NUM_ARGS2(...) _NV_ARG32(__VA_ARGS__, \ 31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16, \ 15,14,13,12,11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0) #define _NV_DISPATCH_N_IMPL1(name, ...) _NV_EVAL(name(__VA_ARGS__)) #define _NV_DISPATCH_N_IMPL0(depth, name, ...) _NV_DISPATCH_N_IMPL1(_NV_CONCAT_EVAL(name, depth), __VA_ARGS__) #define _NV_DISPATCH_N_IMPL(name, ...) _NV_DISPATCH_N_IMPL0(_NV_NUM_ARGS(__VA_ARGS__), name, __VA_ARGS__) #define _NV_DISPATCH_N_ARY(name, ...) _NV_DISPATCH_N_IMPL(name, __VA_ARGS__) #endif #if defined(__GNUC__) #pragma GCC system_header #endif # define _NV_TARGET_ARCH_TO_SELECTOR_350 nv::target::sm_35 # define _NV_TARGET_ARCH_TO_SELECTOR_370 nv::target::sm_37 # define _NV_TARGET_ARCH_TO_SELECTOR_500 nv::target::sm_50 # define _NV_TARGET_ARCH_TO_SELECTOR_520 nv::target::sm_52 # define _NV_TARGET_ARCH_TO_SELECTOR_530 nv::target::sm_53 # define _NV_TARGET_ARCH_TO_SELECTOR_600 nv::target::sm_60 # define _NV_TARGET_ARCH_TO_SELECTOR_610 nv::target::sm_61 # define _NV_TARGET_ARCH_TO_SELECTOR_620 nv::target::sm_62 # define _NV_TARGET_ARCH_TO_SELECTOR_700 nv::target::sm_70 # define _NV_TARGET_ARCH_TO_SELECTOR_720 nv::target::sm_72 # define _NV_TARGET_ARCH_TO_SELECTOR_750 nv::target::sm_75 # define _NV_TARGET_ARCH_TO_SELECTOR_800 nv::target::sm_80 # define _NV_TARGET_ARCH_TO_SELECTOR_860 nv::target::sm_86 # define _NV_TARGET_ARCH_TO_SELECTOR_870 nv::target::sm_87 # define _NV_TARGET_ARCH_TO_SELECTOR_890 nv::target::sm_89 # define _NV_TARGET_ARCH_TO_SELECTOR_900 nv::target::sm_90 # define _NV_TARGET_ARCH_TO_SM_350 35 # define _NV_TARGET_ARCH_TO_SM_370 37 # define _NV_TARGET_ARCH_TO_SM_500 50 # define _NV_TARGET_ARCH_TO_SM_520 52 # define _NV_TARGET_ARCH_TO_SM_530 53 # define _NV_TARGET_ARCH_TO_SM_600 60 # define _NV_TARGET_ARCH_TO_SM_610 61 # define _NV_TARGET_ARCH_TO_SM_620 62 # define _NV_TARGET_ARCH_TO_SM_700 70 # define _NV_TARGET_ARCH_TO_SM_720 72 # define _NV_TARGET_ARCH_TO_SM_750 75 # define _NV_TARGET_ARCH_TO_SM_800 80 # define _NV_TARGET_ARCH_TO_SM_860 86 # define _NV_TARGET_ARCH_TO_SM_870 87 # define _NV_TARGET_ARCH_TO_SM_890 89 # define _NV_TARGET_ARCH_TO_SM_900 90 #if defined(_NV_COMPILER_NVCXX) && defined(_NVHPC_CUDA) # define _NV_TARGET_VAL_SM_35 nv::target::sm_35 # define _NV_TARGET_VAL_SM_37 nv::target::sm_37 # define _NV_TARGET_VAL_SM_50 nv::target::sm_50 # define _NV_TARGET_VAL_SM_52 nv::target::sm_52 # define _NV_TARGET_VAL_SM_53 nv::target::sm_53 # define _NV_TARGET_VAL_SM_60 nv::target::sm_60 # define _NV_TARGET_VAL_SM_61 nv::target::sm_61 # define _NV_TARGET_VAL_SM_62 nv::target::sm_62 # define _NV_TARGET_VAL_SM_70 nv::target::sm_70 # define _NV_TARGET_VAL_SM_72 nv::target::sm_72 # define _NV_TARGET_VAL_SM_75 nv::target::sm_75 # define _NV_TARGET_VAL_SM_80 nv::target::sm_80 # define _NV_TARGET_VAL_SM_86 nv::target::sm_86 # define _NV_TARGET_VAL_SM_87 nv::target::sm_87 # define _NV_TARGET_VAL_SM_89 nv::target::sm_89 # define _NV_TARGET_VAL_SM_90 nv::target::sm_90 # define _NV_TARGET___NV_IS_HOST nv::target::is_host # define _NV_TARGET___NV_IS_DEVICE nv::target::is_device # define _NV_TARGET___NV_ANY_TARGET (nv::target::any_target) # define _NV_TARGET___NV_NO_TARGET (nv::target::no_target) # if defined(NV_TARGET_SM_INTEGER_LIST) # define NV_TARGET_MINIMUM_SM_SELECTOR _NV_FIRST_ARG(NV_TARGET_SM_SELECTOR_LIST) # define NV_TARGET_MINIMUM_SM_INTEGER _NV_FIRST_ARG(NV_TARGET_SM_INTEGER_LIST) # define __CUDA_MINIMUM_ARCH__ _NV_CONCAT_EVAL(_NV_FIRST_ARG(NV_TARGET_SM_INTEGER_LIST), 0) # endif # define _NV_TARGET_PROVIDES(q) nv::target::provides(q) # define _NV_TARGET_IS_EXACTLY(q) nv::target::is_exactly(q) #elif defined(_NV_COMPILER_NVCC) || defined (_NV_COMPILER_CLANG_CUDA) # define _NV_TARGET_VAL_SM_35 350 # define _NV_TARGET_VAL_SM_37 370 # define _NV_TARGET_VAL_SM_50 500 # define _NV_TARGET_VAL_SM_52 520 # define _NV_TARGET_VAL_SM_53 530 # define _NV_TARGET_VAL_SM_60 600 # define _NV_TARGET_VAL_SM_61 610 # define _NV_TARGET_VAL_SM_62 620 # define _NV_TARGET_VAL_SM_70 700 # define _NV_TARGET_VAL_SM_72 720 # define _NV_TARGET_VAL_SM_75 750 # define _NV_TARGET_VAL_SM_80 800 # define _NV_TARGET_VAL_SM_86 860 # define _NV_TARGET_VAL_SM_87 870 # define _NV_TARGET_VAL_SM_89 890 # define _NV_TARGET_VAL_SM_90 900 # if defined(__CUDA_ARCH__) # define _NV_TARGET_VAL __CUDA_ARCH__ # define NV_TARGET_MINIMUM_SM_SELECTOR _NV_CONCAT_EVAL(_NV_TARGET_ARCH_TO_SELECTOR_, __CUDA_ARCH__) # define NV_TARGET_MINIMUM_SM_INTEGER _NV_CONCAT_EVAL(_NV_TARGET_ARCH_TO_SM_, __CUDA_ARCH__) # define __CUDA_MINIMUM_ARCH__ __CUDA_ARCH__ # endif # if defined(__CUDA_ARCH__) # define _NV_TARGET_IS_HOST 0 # define _NV_TARGET_IS_DEVICE 1 # else # define _NV_TARGET_IS_HOST 1 # define _NV_TARGET_IS_DEVICE 0 # endif # if defined(_NV_TARGET_VAL) # define _NV_DEVICE_CHECK(q) (q) # else # define _NV_DEVICE_CHECK(q) (0) # endif # define _NV_TARGET_PROVIDES(q) _NV_DEVICE_CHECK(_NV_TARGET_VAL >= q) # define _NV_TARGET_IS_EXACTLY(q) _NV_DEVICE_CHECK(_NV_TARGET_VAL == q) #else # define _NV_COMPILER_NVCC # define _NV_TARGET_VAL_SM_35 350 # define _NV_TARGET_VAL_SM_37 370 # define _NV_TARGET_VAL_SM_50 500 # define _NV_TARGET_VAL_SM_52 520 # define _NV_TARGET_VAL_SM_53 530 # define _NV_TARGET_VAL_SM_60 600 # define _NV_TARGET_VAL_SM_61 610 # define _NV_TARGET_VAL_SM_62 620 # define _NV_TARGET_VAL_SM_70 700 # define _NV_TARGET_VAL_SM_72 720 # define _NV_TARGET_VAL_SM_75 750 # define _NV_TARGET_VAL_SM_80 800 # define _NV_TARGET_VAL_SM_86 860 # define _NV_TARGET_VAL_SM_87 870 # define _NV_TARGET_VAL_SM_89 890 # define _NV_TARGET_VAL_SM_90 900 # define _NV_TARGET_VAL 0 # define _NV_TARGET_IS_HOST 1 # define _NV_TARGET_IS_DEVICE 0 # define _NV_DEVICE_CHECK(q) (false) # define _NV_TARGET_PROVIDES(q) _NV_DEVICE_CHECK(_NV_TARGET_VAL >= q) # define _NV_TARGET_IS_EXACTLY(q) _NV_DEVICE_CHECK(_NV_TARGET_VAL == q) #endif #define _NV_TARGET___NV_PROVIDES_SM_35 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_35)) #define _NV_TARGET___NV_PROVIDES_SM_37 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_37)) #define _NV_TARGET___NV_PROVIDES_SM_50 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_50)) #define _NV_TARGET___NV_PROVIDES_SM_52 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_52)) #define _NV_TARGET___NV_PROVIDES_SM_53 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_53)) #define _NV_TARGET___NV_PROVIDES_SM_60 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_60)) #define _NV_TARGET___NV_PROVIDES_SM_61 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_61)) #define _NV_TARGET___NV_PROVIDES_SM_62 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_62)) #define _NV_TARGET___NV_PROVIDES_SM_70 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_70)) #define _NV_TARGET___NV_PROVIDES_SM_72 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_72)) #define _NV_TARGET___NV_PROVIDES_SM_75 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_75)) #define _NV_TARGET___NV_PROVIDES_SM_80 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_80)) #define _NV_TARGET___NV_PROVIDES_SM_86 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_86)) #define _NV_TARGET___NV_PROVIDES_SM_87 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_87)) #define _NV_TARGET___NV_PROVIDES_SM_89 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_89)) #define _NV_TARGET___NV_PROVIDES_SM_90 (_NV_TARGET_PROVIDES(_NV_TARGET_VAL_SM_90)) #define _NV_TARGET___NV_IS_EXACTLY_SM_35 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_35)) #define _NV_TARGET___NV_IS_EXACTLY_SM_37 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_37)) #define _NV_TARGET___NV_IS_EXACTLY_SM_50 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_50)) #define _NV_TARGET___NV_IS_EXACTLY_SM_52 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_52)) #define _NV_TARGET___NV_IS_EXACTLY_SM_53 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_53)) #define _NV_TARGET___NV_IS_EXACTLY_SM_60 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_60)) #define _NV_TARGET___NV_IS_EXACTLY_SM_61 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_61)) #define _NV_TARGET___NV_IS_EXACTLY_SM_62 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_62)) #define _NV_TARGET___NV_IS_EXACTLY_SM_70 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_70)) #define _NV_TARGET___NV_IS_EXACTLY_SM_72 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_72)) #define _NV_TARGET___NV_IS_EXACTLY_SM_75 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_75)) #define _NV_TARGET___NV_IS_EXACTLY_SM_80 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_80)) #define _NV_TARGET___NV_IS_EXACTLY_SM_86 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_86)) #define _NV_TARGET___NV_IS_EXACTLY_SM_87 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_87)) #define _NV_TARGET___NV_IS_EXACTLY_SM_89 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_89)) #define _NV_TARGET___NV_IS_EXACTLY_SM_90 (_NV_TARGET_IS_EXACTLY(_NV_TARGET_VAL_SM_90)) #define NV_PROVIDES_SM_35 __NV_PROVIDES_SM_35 #define NV_PROVIDES_SM_37 __NV_PROVIDES_SM_37 #define NV_PROVIDES_SM_50 __NV_PROVIDES_SM_50 #define NV_PROVIDES_SM_52 __NV_PROVIDES_SM_52 #define NV_PROVIDES_SM_53 __NV_PROVIDES_SM_53 #define NV_PROVIDES_SM_60 __NV_PROVIDES_SM_60 #define NV_PROVIDES_SM_61 __NV_PROVIDES_SM_61 #define NV_PROVIDES_SM_62 __NV_PROVIDES_SM_62 #define NV_PROVIDES_SM_70 __NV_PROVIDES_SM_70 #define NV_PROVIDES_SM_72 __NV_PROVIDES_SM_72 #define NV_PROVIDES_SM_75 __NV_PROVIDES_SM_75 #define NV_PROVIDES_SM_80 __NV_PROVIDES_SM_80 #define NV_PROVIDES_SM_86 __NV_PROVIDES_SM_86 #define NV_PROVIDES_SM_87 __NV_PROVIDES_SM_87 #define NV_PROVIDES_SM_89 __NV_PROVIDES_SM_89 #define NV_PROVIDES_SM_90 __NV_PROVIDES_SM_90 #define NV_IS_EXACTLY_SM_35 __NV_IS_EXACTLY_SM_35 #define NV_IS_EXACTLY_SM_37 __NV_IS_EXACTLY_SM_37 #define NV_IS_EXACTLY_SM_50 __NV_IS_EXACTLY_SM_50 #define NV_IS_EXACTLY_SM_52 __NV_IS_EXACTLY_SM_52 #define NV_IS_EXACTLY_SM_53 __NV_IS_EXACTLY_SM_53 #define NV_IS_EXACTLY_SM_60 __NV_IS_EXACTLY_SM_60 #define NV_IS_EXACTLY_SM_61 __NV_IS_EXACTLY_SM_61 #define NV_IS_EXACTLY_SM_62 __NV_IS_EXACTLY_SM_62 #define NV_IS_EXACTLY_SM_70 __NV_IS_EXACTLY_SM_70 #define NV_IS_EXACTLY_SM_72 __NV_IS_EXACTLY_SM_72 #define NV_IS_EXACTLY_SM_75 __NV_IS_EXACTLY_SM_75 #define NV_IS_EXACTLY_SM_80 __NV_IS_EXACTLY_SM_80 #define NV_IS_EXACTLY_SM_86 __NV_IS_EXACTLY_SM_86 #define NV_IS_EXACTLY_SM_87 __NV_IS_EXACTLY_SM_87 #define NV_IS_EXACTLY_SM_89 __NV_IS_EXACTLY_SM_87 #define NV_IS_EXACTLY_SM_90 __NV_IS_EXACTLY_SM_90 #define NV_IS_HOST __NV_IS_HOST #define NV_IS_DEVICE __NV_IS_DEVICE #define NV_ANY_TARGET __NV_ANY_TARGET #define NV_NO_TARGET __NV_NO_TARGET #if defined(_NV_COMPILER_NVCXX) && defined(_NVHPC_CUDA) # define _NV_ARCH_COND(q) (_NV_TARGET_##q) # define _NV_BLOCK_EXPAND(...) _NV_REMOVE_PAREN(__VA_ARGS__) # define _NV_TARGET_IF(cond, t, ...) \ (if target _NV_ARCH_COND(cond) { \ _NV_BLOCK_EXPAND(t) \ } else { _NV_BLOCK_EXPAND(__VA_ARGS__) }) #elif defined(_NV_COMPILER_NVCC) || defined (_NV_COMPILER_CLANG_CUDA) # if (_NV_TARGET___NV_IS_EXACTLY_SM_35) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_35 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_35 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_37) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_37 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_37 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_50) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_50 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_50 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_52) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_52 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_52 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_53) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_53 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_53 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_60) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_60 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_60 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_61) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_61 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_61 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_62) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_62 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_62 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_70) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_70 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_70 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_72) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_72 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_72 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_75) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_75 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_75 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_80) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_80 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_80 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_86) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_86 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_86 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_87) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_87 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_87 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_89) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_89 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_89 0 # endif # if (_NV_TARGET___NV_IS_EXACTLY_SM_90) # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_90 1 # else # define _NV_TARGET_BOOL___NV_IS_EXACTLY_SM_90 0 # endif # if (_NV_TARGET_IS_HOST) # define _NV_TARGET_BOOL___NV_IS_HOST 1 # define _NV_TARGET_BOOL___NV_IS_DEVICE 0 # else # define _NV_TARGET_BOOL___NV_IS_HOST 0 # define _NV_TARGET_BOOL___NV_IS_DEVICE 1 # endif # define _NV_TARGET_BOOL___NV_ANY_TARGET 1 # define _NV_TARGET_BOOL___NV_NO_TARGET 0 # if (_NV_TARGET___NV_PROVIDES_SM_35) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_35 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_35 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_37) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_37 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_37 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_50) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_50 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_50 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_52) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_52 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_52 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_53) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_53 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_53 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_60) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_60 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_60 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_61) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_61 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_61 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_62) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_62 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_62 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_70) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_70 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_70 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_72) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_72 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_72 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_75) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_75 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_75 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_80) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_80 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_80 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_86) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_86 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_86 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_87) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_87 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_87 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_89) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_89 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_89 0 # endif # if (_NV_TARGET___NV_PROVIDES_SM_90) # define _NV_TARGET_BOOL___NV_PROVIDES_SM_90 1 # else # define _NV_TARGET_BOOL___NV_PROVIDES_SM_90 0 # endif # define _NV_ARCH_COND_CAT1(cond) _NV_TARGET_BOOL_##cond # define _NV_ARCH_COND_CAT(cond) _NV_EVAL(_NV_ARCH_COND_CAT1(cond)) # define _NV_TARGET_EMPTY_PARAM ; # if defined(_NV_TARGET_CPP11) # define _NV_BLOCK_EXPAND(...) { _NV_REMOVE_PAREN(__VA_ARGS__) } # define _NV_TARGET_IF(cond, t, ...) _NV_IF( _NV_ARCH_COND_CAT(cond), t, __VA_ARGS__) # else # define _NV_BLOCK_EXPAND(x) { x } # define _NV_TARGET_IF(cond, t) _NV_IF(_NV_ARCH_COND_CAT(cond), t, _NV_TARGET_EMPTY_PARAM) # define _NV_TARGET_IF_ELSE(cond, t, f) _NV_IF(_NV_ARCH_COND_CAT(cond), t, f) # endif #endif #if defined(_NV_TARGET_CPP11) # define _NV_TARGET_DISPATCH_HANDLE0() # define _NV_TARGET_DISPATCH_HANDLE2(q, fn) _NV_TARGET_IF(q, fn) # define _NV_TARGET_DISPATCH_HANDLE4(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE2(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE6(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE4(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE8(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE6(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE10(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE8(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE12(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE10(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE14(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE12(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE16(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE14(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE18(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE16(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE20(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE18(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE22(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE20(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE24(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE22(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE26(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE24(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE28(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE26(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE30(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE28(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE32(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE30(__VA_ARGS__)) # define _NV_TARGET_DISPATCH_HANDLE34(q, fn, ...) _NV_TARGET_IF(q, fn, _NV_TARGET_DISPATCH_HANDLE32(__VA_ARGS__)) # define _NV_TARGET_DISPATCH(...) _NV_BLOCK_EXPAND(_NV_DISPATCH_N_ARY(_NV_TARGET_DISPATCH_HANDLE, __VA_ARGS__)) # define NV_IF_TARGET(cond, ...) _NV_BLOCK_EXPAND(_NV_TARGET_IF(cond, __VA_ARGS__)) # define NV_IF_ELSE_TARGET(cond, t, f) _NV_BLOCK_EXPAND(_NV_TARGET_IF(cond, t, f)) # define NV_DISPATCH_TARGET(...) _NV_TARGET_DISPATCH(__VA_ARGS__) #else # define NV_IF_TARGET(cond, t) _NV_BLOCK_EXPAND(_NV_TARGET_IF(cond, t)) # define NV_IF_ELSE_TARGET(cond, t, f) _NV_BLOCK_EXPAND(_NV_TARGET_IF_ELSE(cond, t, f)) #endif #endif #endif #endif #if !defined(__VECTOR_FUNCTIONS_H__) #define __VECTOR_FUNCTIONS_H__ #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(__CUDACC_RTC__) #define __VECTOR_FUNCTIONS_DECL__ __host__ __device__ #else #define __VECTOR_FUNCTIONS_DECL__ static __inline__ __host__ __device__ #endif __VECTOR_FUNCTIONS_DECL__ char1 make_char1(signed char x); __VECTOR_FUNCTIONS_DECL__ uchar1 make_uchar1(unsigned char x); __VECTOR_FUNCTIONS_DECL__ char2 make_char2(signed char x, signed char y); __VECTOR_FUNCTIONS_DECL__ uchar2 make_uchar2(unsigned char x, unsigned char y); __VECTOR_FUNCTIONS_DECL__ char3 make_char3(signed char x, signed char y, signed char z); __VECTOR_FUNCTIONS_DECL__ uchar3 make_uchar3(unsigned char x, unsigned char y, unsigned char z); __VECTOR_FUNCTIONS_DECL__ char4 make_char4(signed char x, signed char y, signed char z, signed char w); __VECTOR_FUNCTIONS_DECL__ uchar4 make_uchar4(unsigned char x, unsigned char y, unsigned char z, unsigned char w); __VECTOR_FUNCTIONS_DECL__ short1 make_short1(short x); __VECTOR_FUNCTIONS_DECL__ ushort1 make_ushort1(unsigned short x); __VECTOR_FUNCTIONS_DECL__ short2 make_short2(short x, short y); __VECTOR_FUNCTIONS_DECL__ ushort2 make_ushort2(unsigned short x, unsigned short y); __VECTOR_FUNCTIONS_DECL__ short3 make_short3(short x,short y, short z); __VECTOR_FUNCTIONS_DECL__ ushort3 make_ushort3(unsigned short x, unsigned short y, unsigned short z); __VECTOR_FUNCTIONS_DECL__ short4 make_short4(short x, short y, short z, short w); __VECTOR_FUNCTIONS_DECL__ ushort4 make_ushort4(unsigned short x, unsigned short y, unsigned short z, unsigned short w); __VECTOR_FUNCTIONS_DECL__ int1 make_int1(int x); __VECTOR_FUNCTIONS_DECL__ uint1 make_uint1(unsigned int x); __VECTOR_FUNCTIONS_DECL__ int2 make_int2(int x, int y); __VECTOR_FUNCTIONS_DECL__ uint2 make_uint2(unsigned int x, unsigned int y); __VECTOR_FUNCTIONS_DECL__ int3 make_int3(int x, int y, int z); __VECTOR_FUNCTIONS_DECL__ uint3 make_uint3(unsigned int x, unsigned int y, unsigned int z); __VECTOR_FUNCTIONS_DECL__ int4 make_int4(int x, int y, int z, int w); __VECTOR_FUNCTIONS_DECL__ uint4 make_uint4(unsigned int x, unsigned int y, unsigned int z, unsigned int w); __VECTOR_FUNCTIONS_DECL__ long1 make_long1(long int x); __VECTOR_FUNCTIONS_DECL__ ulong1 make_ulong1(unsigned long int x); __VECTOR_FUNCTIONS_DECL__ long2 make_long2(long int x, long int y); __VECTOR_FUNCTIONS_DECL__ ulong2 make_ulong2(unsigned long int x, unsigned long int y); __VECTOR_FUNCTIONS_DECL__ long3 make_long3(long int x, long int y, long int z); __VECTOR_FUNCTIONS_DECL__ ulong3 make_ulong3(unsigned long int x, unsigned long int y, unsigned long int z); __VECTOR_FUNCTIONS_DECL__ long4 make_long4(long int x, long int y, long int z, long int w); __VECTOR_FUNCTIONS_DECL__ ulong4 make_ulong4(unsigned long int x, unsigned long int y, unsigned long int z, unsigned long int w); __VECTOR_FUNCTIONS_DECL__ float1 make_float1(float x); __VECTOR_FUNCTIONS_DECL__ float2 make_float2(float x, float y); __VECTOR_FUNCTIONS_DECL__ float3 make_float3(float x, float y, float z); __VECTOR_FUNCTIONS_DECL__ float4 make_float4(float x, float y, float z, float w); __VECTOR_FUNCTIONS_DECL__ longlong1 make_longlong1(long long int x); __VECTOR_FUNCTIONS_DECL__ ulonglong1 make_ulonglong1(unsigned long long int x); __VECTOR_FUNCTIONS_DECL__ longlong2 make_longlong2(long long int x, long long int y); __VECTOR_FUNCTIONS_DECL__ ulonglong2 make_ulonglong2(unsigned long long int x, unsigned long long int y); __VECTOR_FUNCTIONS_DECL__ longlong3 make_longlong3(long long int x, long long int y, long long int z); __VECTOR_FUNCTIONS_DECL__ ulonglong3 make_ulonglong3(unsigned long long int x, unsigned long long int y, unsigned long long int z); __VECTOR_FUNCTIONS_DECL__ longlong4 make_longlong4(long long int x, long long int y, long long int z, long long int w); __VECTOR_FUNCTIONS_DECL__ ulonglong4 make_ulonglong4(unsigned long long int x, unsigned long long int y, unsigned long long int z, unsigned long long int w); __VECTOR_FUNCTIONS_DECL__ double1 make_double1(double x); __VECTOR_FUNCTIONS_DECL__ double2 make_double2(double x, double y); __VECTOR_FUNCTIONS_DECL__ double3 make_double3(double x, double y, double z); __VECTOR_FUNCTIONS_DECL__ double4 make_double4(double x, double y, double z, double w); #undef __VECTOR_FUNCTIONS_DECL__ #if !defined(__CUDACC_RTC__) #include "vector_functions.hpp" #endif #endif #if defined(__CUDACC__) #if defined(__CUDACC_RTC__) #ifndef __NVRTC_DEVICE_RUNTIME_H__ #define __NVRTC_DEVICE_RUNTIME_H__ #if __cplusplus >= 201103L namespace __nvrtc_util { template<typename T> struct remove_ref { typedef T type; }; template<typename T> struct remove_ref<T&> { typedef T type; }; template<typename T> struct remove_ref<T&&> { typedef T type; }; template<class T> struct is_lvalue_ref { static const bool val = false; }; template<class T> struct is_lvalue_ref<T&> { static const bool val = true; }; } #if __NV_BUILTIN_MOVE_FORWARD namespace std { template<typename T> constexpr T&& __device__ forward(typename __nvrtc_util::remove_ref<T>::type &__in) noexcept { return static_cast<T&&>(__in); } template<typename T> constexpr T&& __device__ forward(typename __nvrtc_util::remove_ref<T>::type && __in) noexcept { static_assert(!__nvrtc_util::is_lvalue_ref<T>::val, "incorrect forward call!"); return static_cast<T&&>(__in); } template<typename T> constexpr typename __nvrtc_util::remove_ref<T>::type && __device__ move(T&& __in) noexcept { return static_cast<typename __nvrtc_util::remove_ref<T>::type &&>(__in); } } #endif #if __NV_BUILTIN_INITIALIZER_LIST namespace std { template<class T> class initializer_list { public: typedef T value_type; typedef const T& reference; typedef const T& const_reference; typedef size_t size_type; typedef const T* iterator; typedef const T* const_iterator; private: const T* buf_ptr; size_t length; constexpr initializer_list(const_iterator in, size_type in_length) : buf_ptr(in), length(in_length) { } public: constexpr initializer_list() noexcept : buf_ptr(0), length(0) { } constexpr size_type size() const noexcept { return length; } constexpr const_iterator begin() const noexcept { return buf_ptr; } constexpr const_iterator end() const noexcept { return buf_ptr + length; } }; } #endif #endif extern "C" inline __host__ __device__ void __cxa_vec_ctor(void *n, size_t num, size_t size, void (*c) (void *), void (*d) (void *)) { if (!c) return; for (size_t i = 0; i < num; i++) c((void*)((unsigned char *)n + i*size)); } extern "C" inline __host__ __device__ void __cxa_vec_cctor(void *dest, void *src, size_t num, size_t size, void (*c) (void *, void *), void (*d) (void *)) { if (!c) return; for (size_t i = 0; i < num; i++) { c((void*)((unsigned char *)dest + i*size), (void*)((unsigned char *)src + i*size)); } } extern "C" inline __host__ __device__ void __cxa_vec_dtor(void *n, size_t num, size_t size, void (*d) (void *)) { if (!d) return; for (size_t i = num-1; i > 0; i--) d((void*)((unsigned char *)n + i*size)); d((void*)((unsigned char *)n + 0*size)); } extern "C" inline __host__ __device__ void * __cxa_vec_new2(size_t num, size_t size, size_t pad, void (*c) (void *), void (*d) (void *), void *(*m) (size_t), void (*f) (void *)) { unsigned char *t = (unsigned char *)m(num*size + pad); *(size_t*)t = num; (void)__cxa_vec_ctor((void *)(t+pad), num, size, c, d); return (void *)(t+pad); } #if defined(_MSC_VER) extern "C" __host__ __device__ __cudart_builtin__ void* malloc(size_t); extern "C" __host__ __device__ __cudart_builtin__ void free(void*); #else extern "C" __host__ __device__ __cudart_builtin__ __attribute__((used)) void* malloc(size_t); extern "C" __host__ __device__ __cudart_builtin__ __attribute__((used)) void free(void*); #endif inline __host__ __device__ void *__nvrtc_malloc_wrapper(size_t in) { return malloc(in); } inline __host__ __device__ void __nvrtc_free_wrapper(void *in) { free(in); } extern "C" inline __host__ __device__ void * __cxa_vec_new(size_t num, size_t size, size_t pad, void (*c) (void *), void (*d) (void *)) { return __cxa_vec_new2(num, size, pad, c, d, __nvrtc_malloc_wrapper, __nvrtc_free_wrapper); } extern "C" inline __host__ __device__ void * __cxa_vec_new3(size_t num, size_t size, size_t pad, void (*c) (void *), void (*d) (void *), void *(*m) (size_t), void (*f)(void *, size_t)) { return __cxa_vec_new2(num, size, pad, c, d, m, 0); } extern "C" inline __host__ __device__ void __cxa_vec_delete2(void *n, size_t size, size_t pad, void (*d) (void *), void (*f) (void *)) { unsigned char *ptr = (unsigned char *)(n); if (ptr) { unsigned char *t = ptr - pad; size_t num = *(size_t*)t; __cxa_vec_dtor(ptr, num, size, d); f((void *)t); } } extern "C" inline __host__ __device__ void __cxa_vec_delete(void *n, size_t size, size_t pad, void (*d) (void *)) { __cxa_vec_delete2(n, size, pad, d, __nvrtc_free_wrapper); } extern "C" inline __host__ __device__ void __cxa_vec_delete3(void *n, size_t size, size_t pad, void (*d)(void *), void (*f)(void *,size_t)) { unsigned char *ptr = (unsigned char *)(n); if (ptr) { unsigned char *t = ptr - pad; size_t num = *(size_t*)t; size_t tsize = num*size+pad; __cxa_vec_dtor(ptr, num, size, d); f((void *)t, tsize); } } extern "C" inline __host__ __device__ void *__gen_nvvm_memcpy_aligned1(void *dest, void *src, size_t size) { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 1); return dest; } extern "C" inline __host__ __device__ void *__gen_nvvm_memcpy_aligned2(void *dest, void *src, size_t size) { if (((unsigned long long)(dest) % 2) == 0 && ((unsigned long long)(src) % 2) == 0) { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 2); } else { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 1); } return dest; } extern "C" inline __host__ __device__ void *__gen_nvvm_memcpy_aligned4(void *dest, void *src, size_t size) { if (((unsigned long long)(dest) % 4) == 0 && ((unsigned long long)(src) % 4) == 0) { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 4); } else { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 1); } return dest; } extern "C" inline __host__ __device__ void * __gen_nvvm_memcpy_aligned8(void *dest, void *src, size_t size) { if (((unsigned long long)(dest) % 8) == 0 && ((unsigned long long)(src) % 8) == 0) { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 8); } else { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 1); } return dest; } extern "C" inline __host__ __device__ void * __gen_nvvm_memcpy_aligned16(void *dest, void *src, size_t size) { if (((unsigned long long)(dest) % 16) == 0 && ((unsigned long long)(src) % 16) == 0) { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 16); } else { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, size, 1); } return dest; } extern "C" inline __host__ __device__ void __cxa_pure_virtual(void) { volatile int *ptr = 0; *ptr = 1; } extern "C" inline __host__ __device__ void* __gen_nvvm_memset(void *dest, int c, size_t n) { __nvvm_memset((unsigned char *)dest, (unsigned char)c, n, 1); return dest; } extern "C" inline __host__ __device__ void* __gen_nvvm_memcpy(void *dest, const void *src, size_t n) { __nvvm_memcpy((unsigned char *)dest, (unsigned char *)src, n, 1); return dest; } #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/device_functions.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/device_functions.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_FUNCTIONS_H__ #endif #if !defined(__DEVICE_FUNCTIONS_H__) #define __DEVICE_FUNCTIONS_H__ #if defined(__cplusplus) && defined(__CUDACC__) #if defined(__CUDACC_RTC__) #define __DEVICE_FUNCTIONS_DECL__ __device__ __cudart_builtin__ #define __DEVICE_FUNCTIONS_STATIC_DECL__ __device__ __cudart_builtin__ #define __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ __device__ __host__ __cudart_builtin__ #else #define __DEVICE_FUNCTIONS_DECL__ __device__ __cudart_builtin__ #define __DEVICE_FUNCTIONS_STATIC_DECL__ static __inline__ __device__ __cudart_builtin__ #define __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ static __inline__ __device__ __host__ __cudart_builtin__ #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif extern "C" { __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __mulhi(int x, int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __umulhi(unsigned int x, unsigned int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int __mul64hi(long long int x, long long int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int __umul64hi(unsigned long long int x, unsigned long long int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __int_as_float(int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __float_as_int(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __uint_as_float(unsigned int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __float_as_uint(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void __syncthreads(void); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void __prof_trigger(int); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void __threadfence(void); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void __threadfence_block(void); __DEVICE_FUNCTIONS_DECL__ #if defined(__GNUC__) || defined(__CUDACC_RTC__) __attribute__((__noreturn__)) #elif defined(_MSC_VER) __declspec(noreturn) #endif __device_builtin__ void __trap(void); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void __brkpt(); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __saturatef(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __sad(int x, int y, unsigned int z); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __usad(unsigned int x, unsigned int y, unsigned int z); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __mul24(int x, int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __umul24(unsigned int x, unsigned int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float fdividef(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fdividef(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double fdivide(double x, double y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __sinf(float x) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __cosf(float x) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __tanf(float x) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ void __sincosf(float x, float *sptr, float *cptr) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __expf(float x) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __exp10f(float x) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __log2f(float x) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __log10f(float x) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __logf(float x) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ float __powf(float x, float y) __THROW; __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __float2int_rn(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __float2int_rz(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __float2int_ru(float); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __float2int_rd(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __float2uint_rn(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __float2uint_rz(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __float2uint_ru(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __float2uint_rd(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __int2float_rn(int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __int2float_rz(int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __int2float_ru(int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __int2float_rd(int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __uint2float_rn(unsigned int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __uint2float_rz(unsigned int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __uint2float_ru(unsigned int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __uint2float_rd(unsigned int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int __float2ll_rn(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int __float2ll_rz(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int __float2ll_ru(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int __float2ll_rd(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int __float2ull_rn(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int __float2ull_rz(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int __float2ull_ru(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int __float2ull_rd(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __ll2float_rn(long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __ll2float_rz(long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __ll2float_ru(long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __ll2float_rd(long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __ull2float_rn(unsigned long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __ull2float_rz(unsigned long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __ull2float_ru(unsigned long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __ull2float_rd(unsigned long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fadd_rn(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fadd_rz(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fadd_ru(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fadd_rd(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fsub_rn(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fsub_rz(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fsub_ru(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fsub_rd(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fmul_rn(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fmul_rz(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fmul_ru(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fmul_rd(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fmaf_rn(float x, float y, float z); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fmaf_rz(float x, float y, float z); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fmaf_ru(float x, float y, float z); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fmaf_rd(float x, float y, float z); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __frcp_rn(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __frcp_rz(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __frcp_ru(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __frcp_rd(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fsqrt_rn(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fsqrt_rz(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fsqrt_ru(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fsqrt_rd(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __frsqrt_rn(float x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fdiv_rn(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fdiv_rz(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fdiv_ru(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __fdiv_rd(float x, float y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __clz(int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __ffs(int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __popc(unsigned int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __brev(unsigned int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __clzll(long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __ffsll(long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __popcll(unsigned long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int __brevll(unsigned long long int x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __byte_perm(unsigned int x, unsigned int y, unsigned int s); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __hadd(int x, int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __rhadd(int x, int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __uhadd(unsigned int x, unsigned int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __urhadd(unsigned int x, unsigned int y); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __double2int_rz(double x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __double2uint_rz(double x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int __double2ll_rz(double x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int __double2ull_rz(double x); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __pm0(void); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __pm1(void); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __pm2(void); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __pm3(void); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vabs2(unsigned int a); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vabsss2(unsigned int a); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vadd2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vaddss2 (unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vaddus2 (unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vavgs2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vavgu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vhaddu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpeq2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpges2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpgeu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpgts2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpgtu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmples2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpleu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmplts2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpltu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpne2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vabsdiffu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vmaxs2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vmaxu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vmins2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vminu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vseteq2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetges2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetgeu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetgts2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetgtu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetles2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetleu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetlts2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetltu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetne2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsadu2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsub2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsubss2 (unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsubus2 (unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vneg2(unsigned int a); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vnegss2(unsigned int a); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vabsdiffs2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsads2(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vabs4(unsigned int a); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vabsss4(unsigned int a); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vadd4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vaddss4 (unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vaddus4 (unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vavgs4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vavgu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vhaddu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpeq4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpges4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpgeu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpgts4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpgtu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmples4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpleu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmplts4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpltu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vcmpne4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vabsdiffu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vmaxs4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vmaxu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vmins4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vminu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vseteq4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetles4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetleu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetlts4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetltu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetges4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetgeu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetgts4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetgtu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsetne4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsadu4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsub4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsubss4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsubus4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vneg4(unsigned int a); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vnegss4(unsigned int a); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vabsdiffs4(unsigned int a, unsigned int b); __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int __vsads4(unsigned int a, unsigned int b); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __vimax_s32_relu(const int a, const int b); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimax_s16x2_relu(const unsigned int a, const unsigned int b); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __vimin_s32_relu(const int a, const int b); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimin_s16x2_relu(const unsigned int a, const unsigned int b); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __vimax3_s32(const int a, const int b, const int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimax3_s16x2(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimax3_u32(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimax3_u16x2(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __vimin3_s32(const int a, const int b, const int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimin3_s16x2(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimin3_u32(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimin3_u16x2(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __vimax3_s32_relu(const int a, const int b, const int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimax3_s16x2_relu(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __vimin3_s32_relu(const int a, const int b, const int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vimin3_s16x2_relu(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __viaddmax_s32(const int a, const int b, const int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __viaddmax_s16x2(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __viaddmax_u32(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __viaddmax_u16x2(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __viaddmin_s32(const int a, const int b, const int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __viaddmin_s16x2(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __viaddmin_u32(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __viaddmin_u16x2(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __viaddmax_s32_relu(const int a, const int b, const int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __viaddmax_s16x2_relu(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __viaddmin_s32_relu(const int a, const int b, const int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __viaddmin_s16x2_relu(const unsigned int a, const unsigned int b, const unsigned int c); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __vibmax_s32(const int a, const int b, bool* const pred); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vibmax_u32(const unsigned int a, const unsigned int b, bool* const pred); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ int __vibmin_s32(const int a, const int b, bool* const pred); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vibmin_u32(const unsigned int a, const unsigned int b, bool* const pred); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vibmax_s16x2(const unsigned int a, const unsigned int b, bool* const pred_hi, bool* const pred_lo); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vibmax_u16x2(const unsigned int a, const unsigned int b, bool* const pred_hi, bool* const pred_lo); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vibmin_s16x2(const unsigned int a, const unsigned int b, bool* const pred_hi, bool* const pred_lo); __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ unsigned int __vibmin_u16x2(const unsigned int a, const unsigned int b, bool* const pred_hi, bool* const pred_lo); } #undef __DEVICE_FUNCTIONS_DECL__ #undef __DEVICE_FUNCTIONS_STATIC_DECL__ #undef __DEVICE_HOST_FUNCTIONS_STATIC_DECL__ #endif #if !defined(__CUDACC_RTC__) #include "device_functions.hpp" #endif #if !defined(__DEVICE_ATOMIC_FUNCTIONS_H__) #define __DEVICE_ATOMIC_FUNCTIONS_H__ #if defined(__CUDACC_RTC__) #define __DEVICE_ATOMIC_FUNCTIONS_DECL__ __device__ #elif defined(_NVHPC_CUDA) # define __DEVICE_ATOMIC_FUNCTIONS_DECL__ extern __device__ __cudart_builtin__ #else #define __DEVICE_ATOMIC_FUNCTIONS_DECL__ static __inline__ __device__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if !defined(__CUDA_ARCH__) && !defined(_NVHPC_CUDA) #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif #if defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA) extern "C" { extern __device__ __device_builtin__ int __iAtomicAdd(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicAdd(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ int __iAtomicExch(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicExch(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ float __fAtomicExch(float *address, float val); extern __device__ __device_builtin__ int __iAtomicMin(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicMin(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ int __iAtomicMax(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicMax(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicInc(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicDec(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ int __iAtomicAnd(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicAnd(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ int __iAtomicOr(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicOr(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ int __iAtomicXor(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicXor(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ int __iAtomicCAS(int *address, int compare, int val); extern __device__ __device_builtin__ unsigned int __uAtomicCAS(unsigned int *address, unsigned int compare, unsigned int val); } #endif __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicAdd(int *address, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicAdd(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicSub(int *address, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicSub(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicExch(int *address, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicExch(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ float atomicExch(float *address, float val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicMin(int *address, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicMin(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicMax(int *address, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicMax(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicInc(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicDec(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicAnd(int *address, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicAnd(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicOr(int *address, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicOr(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicXor(int *address, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicXor(unsigned int *address, unsigned int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ int atomicCAS(int *address, int compare, int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicCAS(unsigned int *address, unsigned int compare, unsigned int val) __DEF_IF_HOST #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 700 #define __WSB_DEPRECATION_MESSAGE(x) #x"() is not valid on compute_70 and above, and should be replaced with "#x"_sync()."\ "To continue using "#x"(), specify virtual architecture compute_60 when targeting sm_70 and above, for example, using the pair of compiler options: -arch=compute_60 -code=sm_70." #elif defined(_NVHPC_CUDA) #define __WSB_DEPRECATION_MESSAGE(x) #x"() is not valid on cc70 and above, and should be replaced with "#x"_sync()." #else #define __WSB_DEPRECATION_MESSAGE(x) #x"() is deprecated in favor of "#x"_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning)." #endif extern "C" { #if defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA) extern __device__ __device_builtin__ unsigned long long int __ullAtomicAdd(unsigned long long int *address, unsigned long long int val); extern __device__ __device_builtin__ unsigned long long int __ullAtomicExch(unsigned long long int *address, unsigned long long int val); extern __device__ __device_builtin__ unsigned long long int __ullAtomicCAS(unsigned long long int *address, unsigned long long int compare, unsigned long long int val); #endif extern __device__ __device_builtin__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__any)) int __any(int cond); extern __device__ __device_builtin__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__all)) int __all(int cond); } __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned long long int atomicAdd(unsigned long long int *address, unsigned long long int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned long long int atomicExch(unsigned long long int *address, unsigned long long int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ unsigned long long int atomicCAS(unsigned long long int *address, unsigned long long int compare, unsigned long long int val) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__any)) bool any(bool cond) __DEF_IF_HOST __DEVICE_ATOMIC_FUNCTIONS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__all)) bool all(bool cond) __DEF_IF_HOST #undef __DEPRECATED__ #undef __WSB_DEPRECATION_MESSAGE #endif #undef __DEF_IF_HOST #undef __DEVICE_ATOMIC_FUNCTIONS_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "device_atomic_functions.hpp" #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/device_double_functions.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/device_double_functions.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_DOUBLE_FUNCTIONS_H__ #endif #if !defined(__DEVICE_DOUBLE_FUNCTIONS_H__) #define __DEVICE_DOUBLE_FUNCTIONS_H__ #if defined(__cplusplus) && defined(__CUDACC__) #if defined(__CUDACC_RTC__) #define __DEVICE_DOUBLE_FUNCTIONS_DECL__ __device__ #else #define __DEVICE_DOUBLE_FUNCTIONS_DECL__ static __inline__ __device__ #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif extern "C" { extern __device__ __device_builtin__ long long int __double_as_longlong(double x); extern __device__ __device_builtin__ double __longlong_as_double(long long int x); extern __device__ __device_builtin__ double __fma_rn(double x, double y, double z); extern __device__ __device_builtin__ double __fma_rz(double x, double y, double z); extern __device__ __device_builtin__ double __fma_ru(double x, double y, double z); extern __device__ __device_builtin__ double __fma_rd(double x, double y, double z); extern __device__ __device_builtin__ double __dadd_rn(double x, double y); extern __device__ __device_builtin__ double __dadd_rz(double x, double y); extern __device__ __device_builtin__ double __dadd_ru(double x, double y); extern __device__ __device_builtin__ double __dadd_rd(double x, double y); extern __device__ __device_builtin__ double __dsub_rn(double x, double y); extern __device__ __device_builtin__ double __dsub_rz(double x, double y); extern __device__ __device_builtin__ double __dsub_ru(double x, double y); extern __device__ __device_builtin__ double __dsub_rd(double x, double y); extern __device__ __device_builtin__ double __dmul_rn(double x, double y); extern __device__ __device_builtin__ double __dmul_rz(double x, double y); extern __device__ __device_builtin__ double __dmul_ru(double x, double y); extern __device__ __device_builtin__ double __dmul_rd(double x, double y); extern __device__ __device_builtin__ float __double2float_rn(double x); extern __device__ __device_builtin__ float __double2float_rz(double x); extern __device__ __device_builtin__ float __double2float_ru(double x); extern __device__ __device_builtin__ float __double2float_rd(double x); extern __device__ __device_builtin__ int __double2int_rn(double x); extern __device__ __device_builtin__ int __double2int_ru(double x); extern __device__ __device_builtin__ int __double2int_rd(double x); extern __device__ __device_builtin__ unsigned int __double2uint_rn(double x); extern __device__ __device_builtin__ unsigned int __double2uint_ru(double x); extern __device__ __device_builtin__ unsigned int __double2uint_rd(double x); extern __device__ __device_builtin__ long long int __double2ll_rn(double x); extern __device__ __device_builtin__ long long int __double2ll_ru(double x); extern __device__ __device_builtin__ long long int __double2ll_rd(double x); extern __device__ __device_builtin__ unsigned long long int __double2ull_rn(double x); extern __device__ __device_builtin__ unsigned long long int __double2ull_ru(double x); extern __device__ __device_builtin__ unsigned long long int __double2ull_rd(double x); extern __device__ __device_builtin__ double __int2double_rn(int x); extern __device__ __device_builtin__ double __uint2double_rn(unsigned int x); extern __device__ __device_builtin__ double __ll2double_rn(long long int x); extern __device__ __device_builtin__ double __ll2double_rz(long long int x); extern __device__ __device_builtin__ double __ll2double_ru(long long int x); extern __device__ __device_builtin__ double __ll2double_rd(long long int x); extern __device__ __device_builtin__ double __ull2double_rn(unsigned long long int x); extern __device__ __device_builtin__ double __ull2double_rz(unsigned long long int x); extern __device__ __device_builtin__ double __ull2double_ru(unsigned long long int x); extern __device__ __device_builtin__ double __ull2double_rd(unsigned long long int x); extern __device__ __device_builtin__ int __double2hiint(double x); extern __device__ __device_builtin__ int __double2loint(double x); extern __device__ __device_builtin__ double __hiloint2double(int hi, int lo); } __DEVICE_DOUBLE_FUNCTIONS_DECL__ double fma(double a, double b, double c, enum cudaRoundMode mode); __DEVICE_DOUBLE_FUNCTIONS_DECL__ double dmul(double a, double b, enum cudaRoundMode mode = cudaRoundNearest); __DEVICE_DOUBLE_FUNCTIONS_DECL__ double dadd(double a, double b, enum cudaRoundMode mode = cudaRoundNearest); __DEVICE_DOUBLE_FUNCTIONS_DECL__ double dsub(double a, double b, enum cudaRoundMode mode = cudaRoundNearest); __DEVICE_DOUBLE_FUNCTIONS_DECL__ int double2int(double a, enum cudaRoundMode mode = cudaRoundZero); __DEVICE_DOUBLE_FUNCTIONS_DECL__ unsigned int double2uint(double a, enum cudaRoundMode mode = cudaRoundZero); __DEVICE_DOUBLE_FUNCTIONS_DECL__ long long int double2ll(double a, enum cudaRoundMode mode = cudaRoundZero); __DEVICE_DOUBLE_FUNCTIONS_DECL__ unsigned long long int double2ull(double a, enum cudaRoundMode mode = cudaRoundZero); __DEVICE_DOUBLE_FUNCTIONS_DECL__ double ll2double(long long int a, enum cudaRoundMode mode = cudaRoundNearest); __DEVICE_DOUBLE_FUNCTIONS_DECL__ double ull2double(unsigned long long int a, enum cudaRoundMode mode = cudaRoundNearest); __DEVICE_DOUBLE_FUNCTIONS_DECL__ double int2double(int a, enum cudaRoundMode mode = cudaRoundNearest); __DEVICE_DOUBLE_FUNCTIONS_DECL__ double uint2double(unsigned int a, enum cudaRoundMode mode = cudaRoundNearest); __DEVICE_DOUBLE_FUNCTIONS_DECL__ double float2double(float a, enum cudaRoundMode mode = cudaRoundNearest); #undef __DEVICE_DOUBLE_FUNCTIONS_DECL__ #endif #if !defined(__CUDACC_RTC__) #include "device_double_functions.hpp" #endif #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_DOUBLE_FUNCTIONS_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_DOUBLE_FUNCTIONS_H__ #endif #if !defined(__SM_20_ATOMIC_FUNCTIONS_H__) #define __SM_20_ATOMIC_FUNCTIONS_H__ #if defined(__CUDACC_RTC__) #define __SM_20_ATOMIC_FUNCTIONS_DECL__ __device__ #elif defined(_NVHPC_CUDA) #define __SM_20_ATOMIC_FUNCTIONS_DECL__ extern __device__ __cudart_builtin__ #else #define __SM_20_ATOMIC_FUNCTIONS_DECL__ static __inline__ __device__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(_NVHPC_CUDA) #undef __device_builtin__ #define __device_builtin__ __location__(device) __location__(host) #endif #if !defined(__CUDA_ARCH__) && !defined(_NVHPC_CUDA) #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif #if defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA) extern "C" { extern __device__ __device_builtin__ float __fAtomicAdd(float *address, float val); } #endif #if defined(_NVHPC_CUDA) #undef __device_builtin__ #define __device_builtin__ #endif __SM_20_ATOMIC_FUNCTIONS_DECL__ float atomicAdd(float *address, float val) __DEF_IF_HOST #endif #undef __DEF_IF_HOST #undef __SM_20_ATOMIC_FUNCTIONS_DECL__ #if !defined(__CUDACC_RTC__) && (defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA)) #include "sm_20_atomic_functions.hpp" #endif #endif #if !defined(__SM_32_ATOMIC_FUNCTIONS_H__) #define __SM_32_ATOMIC_FUNCTIONS_H__ #if defined(__CUDACC_RTC__) #define __SM_32_ATOMIC_FUNCTIONS_DECL__ __device__ #else #define __SM_32_ATOMIC_FUNCTIONS_DECL__ static __inline__ __device__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 320 #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(_NVHPC_CUDA) #undef __device_builtin__ #define __device_builtin__ __location__(device) __location__(host) #endif #ifndef __CUDA_ARCH__ #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif #ifdef __CUDA_ARCH__ extern "C" { extern __device__ __device_builtin__ long long __illAtomicMin(long long *address, long long val); extern __device__ __device_builtin__ long long __illAtomicMax(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicAnd(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicOr(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicXor(long long *address, long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicMin(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicMax(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicAnd(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicOr (unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicXor(unsigned long long *address, unsigned long long val); } #endif #if defined(_NVHPC_CUDA) #undef __device_builtin__ #define __device_builtin__ #endif __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicMin(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicMax(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicAnd(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicOr(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicXor(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicMin(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicMax(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicAnd(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicOr(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicXor(unsigned long long *address, unsigned long long val) __DEF_IF_HOST #endif #endif #undef __DEF_IF_HOST #undef __SM_32_ATOMIC_FUNCTIONS_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_32_atomic_functions.hpp" #endif #endif #if !defined(__SM_35_ATOMIC_FUNCTIONS_H__) #define __SM_35_ATOMIC_FUNCTIONS_H__ #if !defined(__SM_32_ATOMIC_FUNCTIONS_H__) #define __SM_32_ATOMIC_FUNCTIONS_H__ #if defined(__CUDACC_RTC__) #define __SM_32_ATOMIC_FUNCTIONS_DECL__ __device__ #else #define __SM_32_ATOMIC_FUNCTIONS_DECL__ static __inline__ __device__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 320 #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(_NVHPC_CUDA) #undef __device_builtin__ #define __device_builtin__ __location__(device) __location__(host) #endif #ifndef __CUDA_ARCH__ #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif #ifdef __CUDA_ARCH__ extern "C" { extern __device__ __device_builtin__ long long __illAtomicMin(long long *address, long long val); extern __device__ __device_builtin__ long long __illAtomicMax(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicAnd(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicOr(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicXor(long long *address, long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicMin(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicMax(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicAnd(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicOr (unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicXor(unsigned long long *address, unsigned long long val); } #endif #if defined(_NVHPC_CUDA) #undef __device_builtin__ #define __device_builtin__ #endif __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicMin(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicMax(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicAnd(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicOr(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ long long atomicXor(long long *address, long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicMin(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicMax(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicAnd(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicOr(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_32_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicXor(unsigned long long *address, unsigned long long val) __DEF_IF_HOST #endif #endif #undef __DEF_IF_HOST #undef __SM_32_ATOMIC_FUNCTIONS_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_32_atomic_functions.hpp" #endif #endif #endif #if !defined(__SM_60_ATOMIC_FUNCTIONS_H__) #define __SM_60_ATOMIC_FUNCTIONS_H__ #if defined(__CUDACC_RTC__) #define __SM_60_ATOMIC_FUNCTIONS_DECL__ __device__ #elif defined(_NVHPC_CUDA) #define __SM_60_ATOMIC_FUNCTIONS_DECL__ extern __device__ __cudart_builtin__ #else #define __SM_60_ATOMIC_FUNCTIONS_DECL__ static __inline__ __device__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 600 #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if !defined(__CUDA_ARCH__) && !defined(_NVHPC_CUDA) #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif #ifdef __CUDA_ARCH__ extern "C" { extern __device__ __device_builtin__ double __dAtomicAdd(double *address, double val); extern __device__ __device_builtin__ int __iAtomicAdd_block(int *address, int val); extern __device__ __device_builtin__ int __iAtomicAdd_system(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicAdd_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicAdd_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicAdd_block(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicAdd_system(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ float __fAtomicAdd_block(float *address, float val); extern __device__ __device_builtin__ float __fAtomicAdd_system(float *address, float val); extern __device__ __device_builtin__ double __dAtomicAdd_block(double *address, double val); extern __device__ __device_builtin__ double __dAtomicAdd_system(double *address, double val); extern __device__ __device_builtin__ int __iAtomicExch_block(int *address, int val); extern __device__ __device_builtin__ int __iAtomicExch_system(int *address, int val); extern __device__ __device_builtin__ unsigned int __uAtomicExch_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicExch_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicExch_block(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicExch_system(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ float __fAtomicExch_block(float *address, float val); extern __device__ __device_builtin__ float __fAtomicExch_system(float *address, float val); extern __device__ __device_builtin__ int __iAtomicMin_block(int *address, int val); extern __device__ __device_builtin__ int __iAtomicMin_system(int *address, int val); extern __device__ __device_builtin__ long long __illAtomicMin_block(long long *address, long long val); extern __device__ __device_builtin__ long long __illAtomicMin_system(long long *address, long long val); extern __device__ __device_builtin__ unsigned int __uAtomicMin_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicMin_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicMin_block(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicMin_system(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ int __iAtomicMax_block(int *address, int val); extern __device__ __device_builtin__ int __iAtomicMax_system(int *address, int val); extern __device__ __device_builtin__ long long __illAtomicMax_block(long long *address, long long val); extern __device__ __device_builtin__ long long __illAtomicMax_system(long long *address, long long val); extern __device__ __device_builtin__ unsigned int __uAtomicMax_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicMax_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicMax_block(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicMax_system(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned int __uAtomicInc_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicInc_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicDec_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicDec_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ int __iAtomicCAS_block(int *address, int compare, int val); extern __device__ __device_builtin__ int __iAtomicCAS_system(int *address, int compare, int val); extern __device__ __device_builtin__ unsigned int __uAtomicCAS_block(unsigned int *address, unsigned int compare, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicCAS_system(unsigned int *address, unsigned int compare, unsigned int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicCAS_block(unsigned long long int *address, unsigned long long int compare, unsigned long long int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicCAS_system(unsigned long long int *address, unsigned long long int compare, unsigned long long int val); extern __device__ __device_builtin__ int __iAtomicAnd_block(int *address, int val); extern __device__ __device_builtin__ int __iAtomicAnd_system(int *address, int val); extern __device__ __device_builtin__ long long __llAtomicAnd_block(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicAnd_system(long long *address, long long val); extern __device__ __device_builtin__ unsigned int __uAtomicAnd_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicAnd_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicAnd_block(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicAnd_system(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ int __iAtomicOr_block(int *address, int val); extern __device__ __device_builtin__ int __iAtomicOr_system(int *address, int val); extern __device__ __device_builtin__ long long __llAtomicOr_block(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicOr_system(long long *address, long long val); extern __device__ __device_builtin__ unsigned int __uAtomicOr_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicOr_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicOr_block(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicOr_system(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ int __iAtomicXor_block(int *address, int val); extern __device__ __device_builtin__ int __iAtomicXor_system(int *address, int val); extern __device__ __device_builtin__ long long __llAtomicXor_block(long long *address, long long val); extern __device__ __device_builtin__ long long __llAtomicXor_system(long long *address, long long val); extern __device__ __device_builtin__ unsigned int __uAtomicXor_block(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned int __uAtomicXor_system(unsigned int *address, unsigned int val); extern __device__ __device_builtin__ unsigned long long __ullAtomicXor_block(unsigned long long *address, unsigned long long val); extern __device__ __device_builtin__ unsigned long long __ullAtomicXor_system(unsigned long long *address, unsigned long long val); } #endif __SM_60_ATOMIC_FUNCTIONS_DECL__ double atomicAdd(double *address, double val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicAdd_block(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicAdd_system(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicAdd_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicAdd_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicAdd_block(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicAdd_system(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ float atomicAdd_block(float *address, float val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ float atomicAdd_system(float *address, float val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ double atomicAdd_block(double *address, double val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ double atomicAdd_system(double *address, double val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicSub_block(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicSub_system(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicSub_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicSub_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicExch_block(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicExch_system(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicExch_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicExch_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicExch_block(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicExch_system(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ float atomicExch_block(float *address, float val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ float atomicExch_system(float *address, float val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicMin_block(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicMin_system(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicMin_block(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicMin_system(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicMin_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicMin_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicMin_block(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicMin_system(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicMax_block(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicMax_system(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicMax_block(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicMax_system(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicMax_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicMax_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicMax_block(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicMax_system(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicInc_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicInc_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicDec_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicDec_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicCAS_block(int *address, int compare, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicCAS_system(int *address, int compare, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicCAS_block(unsigned int *address, unsigned int compare, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicCAS_system(unsigned int *address, unsigned int compare, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long int atomicCAS_block(unsigned long long int *address, unsigned long long int compare, unsigned long long int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long int atomicCAS_system(unsigned long long int *address, unsigned long long int compare, unsigned long long int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicAnd_block(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicAnd_system(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicAnd_block(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicAnd_system(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicAnd_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicAnd_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicAnd_block(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicAnd_system(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicOr_block(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicOr_system(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicOr_block(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicOr_system(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicOr_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicOr_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicOr_block(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicOr_system(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicXor_block(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ int atomicXor_system(int *address, int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicXor_block(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ long long atomicXor_system(long long *address, long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicXor_block(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned int atomicXor_system(unsigned int *address, unsigned int val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicXor_block(unsigned long long *address, unsigned long long val) __DEF_IF_HOST __SM_60_ATOMIC_FUNCTIONS_DECL__ unsigned long long atomicXor_system(unsigned long long *address, unsigned long long val) __DEF_IF_HOST #endif #endif #undef __SM_60_ATOMIC_FUNCTIONS_DECL__ #undef __DEF_IF_HOST #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_60_atomic_functions.hpp" #endif #endif #if !defined(__SM_20_INTRINSICS_H__) #define __SM_20_INTRINSICS_H__ #if defined(__CUDACC_RTC__) #define __SM_20_INTRINSICS_DECL__ __device__ #else #define __SM_20_INTRINSICS_DECL__ static __inline__ __device__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(_NVHPC_CUDA) #undef __device_builtin__ #define __device_builtin__ __location__(device) __location__(host) #endif #ifndef __CUDA_ARCH__ #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif #if defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 700 #define __WSB_DEPRECATION_MESSAGE(x) #x"() is not valid on compute_70 and above, and should be replaced with "#x"_sync()."\ "To continue using "#x"(), specify virtual architecture compute_60 when targeting sm_70 and above, for example, using the pair of compiler options: -arch=compute_60 -code=sm_70." #elif defined(_NVHPC_CUDA) #define __WSB_DEPRECATION_MESSAGE(x) #x"() is not valid on cc70 and above, and should be replaced with "#x"_sync()." #else #define __WSB_DEPRECATION_MESSAGE(x) #x"() is deprecated in favor of "#x"_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning)." #endif extern "C" { extern __device__ __device_builtin__ void __threadfence_system(void); extern __device__ __device_builtin__ double __ddiv_rn(double x, double y); extern __device__ __device_builtin__ double __ddiv_rz(double x, double y); extern __device__ __device_builtin__ double __ddiv_ru(double x, double y); extern __device__ __device_builtin__ double __ddiv_rd(double x, double y); extern __device__ __device_builtin__ double __drcp_rn(double x); extern __device__ __device_builtin__ double __drcp_rz(double x); extern __device__ __device_builtin__ double __drcp_ru(double x); extern __device__ __device_builtin__ double __drcp_rd(double x); extern __device__ __device_builtin__ double __dsqrt_rn(double x); extern __device__ __device_builtin__ double __dsqrt_rz(double x); extern __device__ __device_builtin__ double __dsqrt_ru(double x); extern __device__ __device_builtin__ double __dsqrt_rd(double x); extern __device__ __device_builtin__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__ballot)) unsigned int __ballot(int); extern __device__ __device_builtin__ int __syncthreads_count(int); extern __device__ __device_builtin__ int __syncthreads_and(int); extern __device__ __device_builtin__ int __syncthreads_or(int); extern __device__ __device_builtin__ long long int clock64(void); extern __device__ __device_builtin__ float __fmaf_ieee_rn(float x, float y, float z); extern __device__ __device_builtin__ float __fmaf_ieee_rd(float x, float y, float z); extern __device__ __device_builtin__ float __fmaf_ieee_ru(float x, float y, float z); extern __device__ __device_builtin__ float __fmaf_ieee_rz(float x, float y, float z); extern __device__ __device_builtin__ long long int __double_as_longlong(double x); extern __device__ __device_builtin__ double __longlong_as_double(long long int x); extern __device__ __device_builtin__ double __fma_rn(double x, double y, double z); extern __device__ __device_builtin__ double __fma_rz(double x, double y, double z); extern __device__ __device_builtin__ double __fma_ru(double x, double y, double z); extern __device__ __device_builtin__ double __fma_rd(double x, double y, double z); extern __device__ __device_builtin__ double __dadd_rn(double x, double y); extern __device__ __device_builtin__ double __dadd_rz(double x, double y); extern __device__ __device_builtin__ double __dadd_ru(double x, double y); extern __device__ __device_builtin__ double __dadd_rd(double x, double y); extern __device__ __device_builtin__ double __dsub_rn(double x, double y); extern __device__ __device_builtin__ double __dsub_rz(double x, double y); extern __device__ __device_builtin__ double __dsub_ru(double x, double y); extern __device__ __device_builtin__ double __dsub_rd(double x, double y); extern __device__ __device_builtin__ double __dmul_rn(double x, double y); extern __device__ __device_builtin__ double __dmul_rz(double x, double y); extern __device__ __device_builtin__ double __dmul_ru(double x, double y); extern __device__ __device_builtin__ double __dmul_rd(double x, double y); extern __device__ __device_builtin__ float __double2float_rn(double x); extern __device__ __device_builtin__ float __double2float_rz(double x); extern __device__ __device_builtin__ float __double2float_ru(double x); extern __device__ __device_builtin__ float __double2float_rd(double x); extern __device__ __device_builtin__ int __double2int_rn(double x); extern __device__ __device_builtin__ int __double2int_ru(double x); extern __device__ __device_builtin__ int __double2int_rd(double x); extern __device__ __device_builtin__ unsigned int __double2uint_rn(double x); extern __device__ __device_builtin__ unsigned int __double2uint_ru(double x); extern __device__ __device_builtin__ unsigned int __double2uint_rd(double x); extern __device__ __device_builtin__ long long int __double2ll_rn(double x); extern __device__ __device_builtin__ long long int __double2ll_ru(double x); extern __device__ __device_builtin__ long long int __double2ll_rd(double x); extern __device__ __device_builtin__ unsigned long long int __double2ull_rn(double x); extern __device__ __device_builtin__ unsigned long long int __double2ull_ru(double x); extern __device__ __device_builtin__ unsigned long long int __double2ull_rd(double x); extern __device__ __device_builtin__ double __int2double_rn(int x); extern __device__ __device_builtin__ double __uint2double_rn(unsigned int x); extern __device__ __device_builtin__ double __ll2double_rn(long long int x); extern __device__ __device_builtin__ double __ll2double_rz(long long int x); extern __device__ __device_builtin__ double __ll2double_ru(long long int x); extern __device__ __device_builtin__ double __ll2double_rd(long long int x); extern __device__ __device_builtin__ double __ull2double_rn(unsigned long long int x); extern __device__ __device_builtin__ double __ull2double_rz(unsigned long long int x); extern __device__ __device_builtin__ double __ull2double_ru(unsigned long long int x); extern __device__ __device_builtin__ double __ull2double_rd(unsigned long long int x); extern __device__ __device_builtin__ int __double2hiint(double x); extern __device__ __device_builtin__ int __double2loint(double x); extern __device__ __device_builtin__ double __hiloint2double(int hi, int lo); } #if defined(_NVHPC_CUDA) #undef __device_builtin__ #define __device_builtin__ #endif __SM_20_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__ballot)) unsigned int ballot(bool pred) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ int syncthreads_count(bool pred) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ bool syncthreads_and(bool pred) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ bool syncthreads_or(bool pred) __DEF_IF_HOST #undef __DEPRECATED__ #undef __WSB_DEPRECATION_MESSAGE __SM_20_INTRINSICS_DECL__ unsigned int __isGlobal(const void *ptr) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ unsigned int __isShared(const void *ptr) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ unsigned int __isConstant(const void *ptr) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ unsigned int __isLocal(const void *ptr) __DEF_IF_HOST #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 700) __SM_20_INTRINSICS_DECL__ unsigned int __isGridConstant(const void *ptr) __DEF_IF_HOST #endif __SM_20_INTRINSICS_DECL__ size_t __cvta_generic_to_global(const void *ptr) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ size_t __cvta_generic_to_shared(const void *ptr) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ size_t __cvta_generic_to_constant(const void *ptr) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ size_t __cvta_generic_to_local(const void *ptr) __DEF_IF_HOST #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 700) __SM_20_INTRINSICS_DECL__ size_t __cvta_generic_to_grid_constant(const void *ptr) __DEF_IF_HOST #endif __SM_20_INTRINSICS_DECL__ void * __cvta_global_to_generic(size_t rawbits) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ void * __cvta_shared_to_generic(size_t rawbits) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ void * __cvta_constant_to_generic(size_t rawbits) __DEF_IF_HOST __SM_20_INTRINSICS_DECL__ void * __cvta_local_to_generic(size_t rawbits) __DEF_IF_HOST #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 700) __SM_20_INTRINSICS_DECL__ void * __cvta_grid_constant_to_generic(size_t rawbits) __DEF_IF_HOST #endif #endif #undef __DEF_IF_HOST #undef __SM_20_INTRINSICS_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_20_intrinsics.hpp" #endif #endif #if !defined(__SM_30_INTRINSICS_H__) #define __SM_30_INTRINSICS_H__ #if defined(__CUDACC_RTC__) #define __SM_30_INTRINSICS_DECL__ __device__ #elif defined(_NVHPC_CUDA) #define __SM_30_INTRINSICS_DECL__ extern __device__ __cudart_builtin__ #else #define __SM_30_INTRINSICS_DECL__ static __device__ __inline__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 300 #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if !defined(__CUDA_ARCH__) && !defined(_NVHPC_CUDA) #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif #if !defined warpSize && !defined __local_warpSize #define warpSize 32 #define __local_warpSize #endif #if defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ < 700 #define __WSB_DEPRECATION_MESSAGE(x) #x"() is deprecated in favor of "#x"_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning)." #elif defined(_NVHPC_CUDA) #define __WSB_DEPRECATION_MESSAGE(x) #x"() is not valid on cc70 and above, and should be replaced with "#x"_sync()." #endif __SM_30_INTRINSICS_DECL__ unsigned __fns(unsigned mask, unsigned base, int offset) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ void __barrier_sync(unsigned id) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ void __barrier_sync_count(unsigned id, unsigned cnt) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ void __syncwarp(unsigned mask=0xFFFFFFFF) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ int __all_sync(unsigned mask, int pred) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ int __any_sync(unsigned mask, int pred) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ int __uni_sync(unsigned mask, int pred) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned __ballot_sync(unsigned mask, int pred) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned __activemask() __DEF_IF_HOST #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ < 700 __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl)) int __shfl(int var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl)) unsigned int __shfl(unsigned int var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_up)) int __shfl_up(int var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_up)) unsigned int __shfl_up(unsigned int var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_down)) int __shfl_down(int var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_down)) unsigned int __shfl_down(unsigned int var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_xor)) int __shfl_xor(int var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_xor)) unsigned int __shfl_xor(unsigned int var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl)) float __shfl(float var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_up)) float __shfl_up(float var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_down)) float __shfl_down(float var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_xor)) float __shfl_xor(float var, int laneMask, int width=warpSize) __DEF_IF_HOST #endif __SM_30_INTRINSICS_DECL__ int __shfl_sync(unsigned mask, int var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned int __shfl_sync(unsigned mask, unsigned int var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ int __shfl_up_sync(unsigned mask, int var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned int __shfl_up_sync(unsigned mask, unsigned int var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ int __shfl_down_sync(unsigned mask, int var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned int __shfl_down_sync(unsigned mask, unsigned int var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ int __shfl_xor_sync(unsigned mask, int var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned int __shfl_xor_sync(unsigned mask, unsigned int var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ float __shfl_sync(unsigned mask, float var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ float __shfl_up_sync(unsigned mask, float var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ float __shfl_down_sync(unsigned mask, float var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ float __shfl_xor_sync(unsigned mask, float var, int laneMask, int width=warpSize) __DEF_IF_HOST #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ < 700 __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl)) unsigned long long __shfl(unsigned long long var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl)) long long __shfl(long long var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_up)) long long __shfl_up(long long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_up)) unsigned long long __shfl_up(unsigned long long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_down)) long long __shfl_down(long long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_down)) unsigned long long __shfl_down(unsigned long long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_xor)) long long __shfl_xor(long long var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_xor)) unsigned long long __shfl_xor(unsigned long long var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl)) double __shfl(double var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_up)) double __shfl_up(double var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_down)) double __shfl_down(double var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_xor)) double __shfl_xor(double var, int laneMask, int width=warpSize) __DEF_IF_HOST #endif __SM_30_INTRINSICS_DECL__ long long __shfl_sync(unsigned mask, long long var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned long long __shfl_sync(unsigned mask, unsigned long long var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ long long __shfl_up_sync(unsigned mask, long long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned long long __shfl_up_sync(unsigned mask, unsigned long long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ long long __shfl_down_sync(unsigned mask, long long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned long long __shfl_down_sync(unsigned mask, unsigned long long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ long long __shfl_xor_sync(unsigned mask, long long var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned long long __shfl_xor_sync(unsigned mask, unsigned long long var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ double __shfl_sync(unsigned mask, double var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ double __shfl_up_sync(unsigned mask, double var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ double __shfl_down_sync(unsigned mask, double var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ double __shfl_xor_sync(unsigned mask, double var, int laneMask, int width=warpSize) __DEF_IF_HOST #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ < 700 __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl)) long __shfl(long var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl)) unsigned long __shfl(unsigned long var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_up)) long __shfl_up(long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_up)) unsigned long __shfl_up(unsigned long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_down)) long __shfl_down(long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_down)) unsigned long __shfl_down(unsigned long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_xor)) long __shfl_xor(long var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ __DEPRECATED__(__WSB_DEPRECATION_MESSAGE(__shfl_xor)) unsigned long __shfl_xor(unsigned long var, int laneMask, int width=warpSize) __DEF_IF_HOST #endif __SM_30_INTRINSICS_DECL__ long __shfl_sync(unsigned mask, long var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned long __shfl_sync(unsigned mask, unsigned long var, int srcLane, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ long __shfl_up_sync(unsigned mask, long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned long __shfl_up_sync(unsigned mask, unsigned long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ long __shfl_down_sync(unsigned mask, long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned long __shfl_down_sync(unsigned mask, unsigned long var, unsigned int delta, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ long __shfl_xor_sync(unsigned mask, long var, int laneMask, int width=warpSize) __DEF_IF_HOST __SM_30_INTRINSICS_DECL__ unsigned long __shfl_xor_sync(unsigned mask, unsigned long var, int laneMask, int width=warpSize) __DEF_IF_HOST #undef __DEPRECATED__ #undef __WSB_DEPRECATION_MESSAGE #if defined(__local_warpSize) #undef warpSize #undef __local_warpSize #endif #endif #endif #undef __DEF_IF_HOST #undef __SM_30_INTRINSICS_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_30_intrinsics.hpp" #endif #endif #if !defined(__SM_32_INTRINSICS_H__) #define __SM_32_INTRINSICS_H__ #if defined(__CUDACC_RTC__) #define __SM_32_INTRINSICS_DECL__ __device__ #else #define __SM_32_INTRINSICS_DECL__ static __device__ __inline__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 320 #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA) #define __DEF_IF_HOST ; #else #define __DEF_IF_HOST { } #endif __SM_32_INTRINSICS_DECL__ long __ldg(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldg(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldg(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldg(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldg(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldg(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldg(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldg(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldg(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldg(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldg(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldg(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldg(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldg(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldg(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldg(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldg(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldg(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldg(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldg(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldg(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldg(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldg(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldg(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldg(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldg(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldg(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldg(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldg(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldg(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldcg(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldcg(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldcg(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldcg(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldcg(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldcg(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldcg(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldcg(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldcg(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldcg(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldcg(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldcg(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldcg(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldcg(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldcg(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldcg(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldcg(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldcg(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldcg(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldcg(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldcg(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldcg(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldcg(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldcg(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldcg(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldcg(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldcg(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldcg(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldcg(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldcg(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldca(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldca(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldca(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldca(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldca(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldca(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldca(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldca(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldca(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldca(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldca(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldca(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldca(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldca(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldca(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldca(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldca(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldca(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldca(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldca(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldca(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldca(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldca(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldca(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldca(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldca(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldca(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldca(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldca(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldca(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldcs(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldcs(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldcs(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldcs(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldcs(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldcs(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldcs(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldcs(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldcs(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldcs(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldcs(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldcs(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldcs(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldcs(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldcs(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldcs(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldcs(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldcs(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldcs(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldcs(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldcs(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldcs(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldcs(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldcs(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldcs(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldcs(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldcs(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldcs(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldcs(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldcs(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldlu(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldlu(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldlu(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldlu(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldlu(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldlu(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldlu(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldlu(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldlu(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldlu(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldlu(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldlu(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldlu(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldlu(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldlu(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldlu(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldlu(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldlu(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldlu(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldlu(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldlu(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldlu(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldlu(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldlu(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldlu(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldlu(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldlu(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldlu(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldlu(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldlu(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldcv(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldcv(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldcv(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldcv(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldcv(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldcv(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldcv(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldcv(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldcv(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldcv(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldcv(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldcv(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldcv(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldcv(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldcv(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldcv(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldcv(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldcv(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldcv(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldcv(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldcv(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldcv(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldcv(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldcv(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldcv(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldcv(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldcv(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldcv(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldcv(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldcv(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(long *ptr, long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned long *ptr, unsigned long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(char *ptr, char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(signed char *ptr, signed char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(short *ptr, short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(int *ptr, int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(long long *ptr, long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(char2 *ptr, char2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(char4 *ptr, char4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(short2 *ptr, short2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(short4 *ptr, short4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(int2 *ptr, int2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(int4 *ptr, int4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(longlong2 *ptr, longlong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned char *ptr, unsigned char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned short *ptr, unsigned short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned int *ptr, unsigned int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned long long *ptr, unsigned long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(uchar2 *ptr, uchar2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(uchar4 *ptr, uchar4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(ushort2 *ptr, ushort2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(ushort4 *ptr, ushort4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(uint2 *ptr, uint2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(uint4 *ptr, uint4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(ulonglong2 *ptr, ulonglong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(float *ptr, float value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(double *ptr, double value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(float2 *ptr, float2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(float4 *ptr, float4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(double2 *ptr, double2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(long *ptr, long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned long *ptr, unsigned long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(char *ptr, char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(signed char *ptr, signed char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(short *ptr, short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(int *ptr, int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(long long *ptr, long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(char2 *ptr, char2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(char4 *ptr, char4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(short2 *ptr, short2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(short4 *ptr, short4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(int2 *ptr, int2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(int4 *ptr, int4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(longlong2 *ptr, longlong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned char *ptr, unsigned char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned short *ptr, unsigned short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned int *ptr, unsigned int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned long long *ptr, unsigned long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(uchar2 *ptr, uchar2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(uchar4 *ptr, uchar4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(ushort2 *ptr, ushort2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(ushort4 *ptr, ushort4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(uint2 *ptr, uint2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(uint4 *ptr, uint4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(ulonglong2 *ptr, ulonglong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(float *ptr, float value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(double *ptr, double value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(float2 *ptr, float2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(float4 *ptr, float4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(double2 *ptr, double2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(long *ptr, long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned long *ptr, unsigned long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(char *ptr, char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(signed char *ptr, signed char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(short *ptr, short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(int *ptr, int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(long long *ptr, long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(char2 *ptr, char2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(char4 *ptr, char4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(short2 *ptr, short2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(short4 *ptr, short4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(int2 *ptr, int2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(int4 *ptr, int4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(longlong2 *ptr, longlong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned char *ptr, unsigned char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned short *ptr, unsigned short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned int *ptr, unsigned int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned long long *ptr, unsigned long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(uchar2 *ptr, uchar2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(uchar4 *ptr, uchar4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(ushort2 *ptr, ushort2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(ushort4 *ptr, ushort4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(uint2 *ptr, uint2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(uint4 *ptr, uint4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(ulonglong2 *ptr, ulonglong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(float *ptr, float value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(double *ptr, double value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(float2 *ptr, float2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(float4 *ptr, float4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(double2 *ptr, double2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(long *ptr, long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned long *ptr, unsigned long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(char *ptr, char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(signed char *ptr, signed char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(short *ptr, short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(int *ptr, int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(long long *ptr, long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(char2 *ptr, char2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(char4 *ptr, char4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(short2 *ptr, short2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(short4 *ptr, short4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(int2 *ptr, int2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(int4 *ptr, int4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(longlong2 *ptr, longlong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned char *ptr, unsigned char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned short *ptr, unsigned short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned int *ptr, unsigned int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned long long *ptr, unsigned long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(uchar2 *ptr, uchar2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(uchar4 *ptr, uchar4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(ushort2 *ptr, ushort2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(ushort4 *ptr, ushort4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(uint2 *ptr, uint2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(uint4 *ptr, uint4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(ulonglong2 *ptr, ulonglong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(float *ptr, float value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(double *ptr, double value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(float2 *ptr, float2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(float4 *ptr, float4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(double2 *ptr, double2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __funnelshift_l(unsigned int lo, unsigned int hi, unsigned int shift) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __funnelshift_lc(unsigned int lo, unsigned int hi, unsigned int shift) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __funnelshift_r(unsigned int lo, unsigned int hi, unsigned int shift) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __funnelshift_rc(unsigned int lo, unsigned int hi, unsigned int shift) __DEF_IF_HOST #endif #endif #undef __SM_32_INTRINSICS_DECL__ #if !defined(__CUDACC_RTC__) && (defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA)) #include "sm_32_intrinsics.hpp" #endif #endif #if !defined(__SM_35_INTRINSICS_H__) #define __SM_35_INTRINSICS_H__ #if !defined(__SM_32_INTRINSICS_H__) #define __SM_32_INTRINSICS_H__ #if defined(__CUDACC_RTC__) #define __SM_32_INTRINSICS_DECL__ __device__ #else #define __SM_32_INTRINSICS_DECL__ static __device__ __inline__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 320 #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA) #define __DEF_IF_HOST ; #else #define __DEF_IF_HOST { } #endif __SM_32_INTRINSICS_DECL__ long __ldg(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldg(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldg(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldg(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldg(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldg(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldg(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldg(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldg(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldg(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldg(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldg(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldg(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldg(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldg(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldg(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldg(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldg(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldg(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldg(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldg(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldg(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldg(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldg(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldg(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldg(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldg(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldg(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldg(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldg(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldcg(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldcg(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldcg(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldcg(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldcg(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldcg(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldcg(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldcg(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldcg(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldcg(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldcg(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldcg(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldcg(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldcg(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldcg(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldcg(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldcg(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldcg(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldcg(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldcg(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldcg(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldcg(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldcg(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldcg(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldcg(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldcg(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldcg(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldcg(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldcg(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldcg(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldca(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldca(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldca(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldca(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldca(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldca(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldca(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldca(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldca(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldca(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldca(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldca(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldca(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldca(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldca(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldca(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldca(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldca(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldca(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldca(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldca(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldca(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldca(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldca(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldca(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldca(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldca(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldca(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldca(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldca(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldcs(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldcs(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldcs(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldcs(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldcs(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldcs(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldcs(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldcs(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldcs(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldcs(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldcs(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldcs(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldcs(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldcs(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldcs(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldcs(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldcs(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldcs(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldcs(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldcs(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldcs(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldcs(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldcs(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldcs(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldcs(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldcs(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldcs(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldcs(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldcs(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldcs(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldlu(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldlu(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldlu(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldlu(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldlu(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldlu(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldlu(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldlu(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldlu(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldlu(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldlu(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldlu(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldlu(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldlu(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldlu(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldlu(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldlu(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldlu(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldlu(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldlu(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldlu(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldlu(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldlu(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldlu(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldlu(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldlu(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldlu(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldlu(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldlu(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldlu(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long __ldcv(const long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long __ldcv(const unsigned long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char __ldcv(const char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ signed char __ldcv(const signed char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short __ldcv(const short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int __ldcv(const int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ long long __ldcv(const long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char2 __ldcv(const char2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ char4 __ldcv(const char4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short2 __ldcv(const short2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ short4 __ldcv(const short4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int2 __ldcv(const int2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ int4 __ldcv(const int4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ longlong2 __ldcv(const longlong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned char __ldcv(const unsigned char *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned short __ldcv(const unsigned short *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __ldcv(const unsigned int *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned long long __ldcv(const unsigned long long *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar2 __ldcv(const uchar2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uchar4 __ldcv(const uchar4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort2 __ldcv(const ushort2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ushort4 __ldcv(const ushort4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint2 __ldcv(const uint2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ uint4 __ldcv(const uint4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ ulonglong2 __ldcv(const ulonglong2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float __ldcv(const float *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double __ldcv(const double *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float2 __ldcv(const float2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ float4 __ldcv(const float4 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ double2 __ldcv(const double2 *ptr) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(long *ptr, long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned long *ptr, unsigned long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(char *ptr, char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(signed char *ptr, signed char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(short *ptr, short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(int *ptr, int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(long long *ptr, long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(char2 *ptr, char2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(char4 *ptr, char4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(short2 *ptr, short2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(short4 *ptr, short4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(int2 *ptr, int2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(int4 *ptr, int4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(longlong2 *ptr, longlong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned char *ptr, unsigned char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned short *ptr, unsigned short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned int *ptr, unsigned int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(unsigned long long *ptr, unsigned long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(uchar2 *ptr, uchar2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(uchar4 *ptr, uchar4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(ushort2 *ptr, ushort2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(ushort4 *ptr, ushort4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(uint2 *ptr, uint2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(uint4 *ptr, uint4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(ulonglong2 *ptr, ulonglong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(float *ptr, float value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(double *ptr, double value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(float2 *ptr, float2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(float4 *ptr, float4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwb(double2 *ptr, double2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(long *ptr, long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned long *ptr, unsigned long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(char *ptr, char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(signed char *ptr, signed char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(short *ptr, short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(int *ptr, int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(long long *ptr, long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(char2 *ptr, char2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(char4 *ptr, char4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(short2 *ptr, short2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(short4 *ptr, short4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(int2 *ptr, int2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(int4 *ptr, int4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(longlong2 *ptr, longlong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned char *ptr, unsigned char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned short *ptr, unsigned short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned int *ptr, unsigned int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(unsigned long long *ptr, unsigned long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(uchar2 *ptr, uchar2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(uchar4 *ptr, uchar4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(ushort2 *ptr, ushort2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(ushort4 *ptr, ushort4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(uint2 *ptr, uint2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(uint4 *ptr, uint4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(ulonglong2 *ptr, ulonglong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(float *ptr, float value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(double *ptr, double value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(float2 *ptr, float2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(float4 *ptr, float4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcg(double2 *ptr, double2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(long *ptr, long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned long *ptr, unsigned long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(char *ptr, char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(signed char *ptr, signed char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(short *ptr, short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(int *ptr, int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(long long *ptr, long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(char2 *ptr, char2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(char4 *ptr, char4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(short2 *ptr, short2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(short4 *ptr, short4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(int2 *ptr, int2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(int4 *ptr, int4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(longlong2 *ptr, longlong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned char *ptr, unsigned char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned short *ptr, unsigned short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned int *ptr, unsigned int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(unsigned long long *ptr, unsigned long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(uchar2 *ptr, uchar2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(uchar4 *ptr, uchar4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(ushort2 *ptr, ushort2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(ushort4 *ptr, ushort4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(uint2 *ptr, uint2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(uint4 *ptr, uint4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(ulonglong2 *ptr, ulonglong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(float *ptr, float value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(double *ptr, double value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(float2 *ptr, float2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(float4 *ptr, float4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stcs(double2 *ptr, double2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(long *ptr, long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned long *ptr, unsigned long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(char *ptr, char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(signed char *ptr, signed char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(short *ptr, short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(int *ptr, int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(long long *ptr, long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(char2 *ptr, char2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(char4 *ptr, char4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(short2 *ptr, short2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(short4 *ptr, short4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(int2 *ptr, int2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(int4 *ptr, int4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(longlong2 *ptr, longlong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned char *ptr, unsigned char value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned short *ptr, unsigned short value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned int *ptr, unsigned int value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(unsigned long long *ptr, unsigned long long value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(uchar2 *ptr, uchar2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(uchar4 *ptr, uchar4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(ushort2 *ptr, ushort2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(ushort4 *ptr, ushort4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(uint2 *ptr, uint2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(uint4 *ptr, uint4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(ulonglong2 *ptr, ulonglong2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(float *ptr, float value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(double *ptr, double value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(float2 *ptr, float2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(float4 *ptr, float4 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ void __stwt(double2 *ptr, double2 value) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __funnelshift_l(unsigned int lo, unsigned int hi, unsigned int shift) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __funnelshift_lc(unsigned int lo, unsigned int hi, unsigned int shift) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __funnelshift_r(unsigned int lo, unsigned int hi, unsigned int shift) __DEF_IF_HOST __SM_32_INTRINSICS_DECL__ unsigned int __funnelshift_rc(unsigned int lo, unsigned int hi, unsigned int shift) __DEF_IF_HOST #endif #endif #undef __SM_32_INTRINSICS_DECL__ #if !defined(__CUDACC_RTC__) && (defined(__CUDA_ARCH__) || defined(_NVHPC_CUDA)) #include "sm_32_intrinsics.hpp" #endif #endif #endif #if !defined(__SM_61_INTRINSICS_H__) #define __SM_61_INTRINSICS_H__ #if defined(__CUDACC_RTC__) #define __SM_61_INTRINSICS_DECL__ __device__ #else #define __SM_61_INTRINSICS_DECL__ static __device__ __inline__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 610 #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #ifndef __CUDA_ARCH__ #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif __SM_61_INTRINSICS_DECL__ int __dp2a_lo(int srcA, int srcB, int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ unsigned int __dp2a_lo(unsigned int srcA, unsigned int srcB, unsigned int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ int __dp2a_lo(short2 srcA, char4 srcB, int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ unsigned int __dp2a_lo(ushort2 srcA, uchar4 srcB, unsigned int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ int __dp2a_hi(int srcA, int srcB, int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ unsigned int __dp2a_hi(unsigned int srcA, unsigned int srcB, unsigned int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ int __dp2a_hi(short2 srcA, char4 srcB, int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ unsigned int __dp2a_hi(ushort2 srcA, uchar4 srcB, unsigned int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ int __dp4a(int srcA, int srcB, int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ unsigned int __dp4a(unsigned int srcA, unsigned int srcB, unsigned int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ int __dp4a(char4 srcA, char4 srcB, int c) __DEF_IF_HOST __SM_61_INTRINSICS_DECL__ unsigned int __dp4a(uchar4 srcA, uchar4 srcB, unsigned int c) __DEF_IF_HOST #endif #endif #undef __DEF_IF_HOST #undef __SM_61_INTRINSICS_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_61_intrinsics.hpp" #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/sm_70_rt.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/sm_70_rt.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_70_RT_H__ #endif #if !defined(__SM_70_RT_H__) #define __SM_70_RT_H__ #if defined(__CUDACC_RTC__) #define __SM_70_RT_DECL__ __host__ __device__ #else #define __SM_70_RT_DECL__ static __device__ __inline__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 700 #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #ifndef __CUDA_ARCH__ #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif __SM_70_RT_DECL__ unsigned int __match_any_sync(unsigned mask, unsigned value) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_any_sync(unsigned mask, int value) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_any_sync(unsigned mask, unsigned long value) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_any_sync(unsigned mask, long value) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_any_sync(unsigned mask, unsigned long long value) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_any_sync(unsigned mask, long long value) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_any_sync(unsigned mask, float value) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_any_sync(unsigned mask, double value) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_all_sync(unsigned mask, unsigned value, int *pred) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_all_sync(unsigned mask, int value, int *pred) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_all_sync(unsigned mask, unsigned long value, int *pred) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_all_sync(unsigned mask, long value, int *pred) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_all_sync(unsigned mask, unsigned long long value, int *pred) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_all_sync(unsigned mask, long long value, int *pred) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_all_sync(unsigned mask, float value, int *pred) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned int __match_all_sync(unsigned mask, double value, int *pred) __DEF_IF_HOST __SM_70_RT_DECL__ void __nanosleep(unsigned int ns) __DEF_IF_HOST __SM_70_RT_DECL__ unsigned short int atomicCAS(unsigned short int *address, unsigned short int compare, unsigned short int val) __DEF_IF_HOST #endif #endif #undef __DEF_IF_HOST #undef __SM_70_RT_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_70_rt.hpp" #endif #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_70_RT_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_70_RT_H__ #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/sm_80_rt.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/sm_80_rt.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_80_RT_H__ #endif #if !defined(__SM_80_RT_H__) #define __SM_80_RT_H__ #if defined(__CUDACC_RTC__) #define __SM_80_RT_DECL__ __host__ __device__ #else #define __SM_80_RT_DECL__ static __device__ __inline__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 800 #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #ifndef __CUDA_ARCH__ #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif __SM_80_RT_DECL__ unsigned __reduce_add_sync(unsigned mask, unsigned value) __DEF_IF_HOST __SM_80_RT_DECL__ unsigned __reduce_min_sync(unsigned mask, unsigned value) __DEF_IF_HOST __SM_80_RT_DECL__ unsigned __reduce_max_sync(unsigned mask, unsigned value) __DEF_IF_HOST __SM_80_RT_DECL__ int __reduce_add_sync(unsigned mask, int value) __DEF_IF_HOST __SM_80_RT_DECL__ int __reduce_min_sync(unsigned mask, int value) __DEF_IF_HOST __SM_80_RT_DECL__ int __reduce_max_sync(unsigned mask, int value) __DEF_IF_HOST __SM_80_RT_DECL__ unsigned __reduce_and_sync(unsigned mask, unsigned value) __DEF_IF_HOST __SM_80_RT_DECL__ unsigned __reduce_or_sync(unsigned mask, unsigned value) __DEF_IF_HOST __SM_80_RT_DECL__ unsigned __reduce_xor_sync(unsigned mask, unsigned value) __DEF_IF_HOST extern "C" { inline __device__ void *__nv_associate_access_property(const void *ptr, unsigned long long property) { extern __device__ void *__nv_associate_access_property_impl(const void *, unsigned long long); return __nv_associate_access_property_impl(ptr, property); } inline __device__ void __nv_memcpy_async_shared_global_4(void *dst, const void *src, unsigned src_size) { extern __device__ void __nv_memcpy_async_shared_global_4_impl(void *, const void *, unsigned); __nv_memcpy_async_shared_global_4_impl(dst, src, src_size); } inline __device__ void __nv_memcpy_async_shared_global_8(void *dst, const void *src, unsigned src_size) { extern __device__ void __nv_memcpy_async_shared_global_8_impl(void *, const void *, unsigned); __nv_memcpy_async_shared_global_8_impl(dst, src, src_size); } inline __device__ void __nv_memcpy_async_shared_global_16(void *dst, const void *src, unsigned src_size) { extern __device__ void __nv_memcpy_async_shared_global_16_impl(void *, const void *, unsigned); __nv_memcpy_async_shared_global_16_impl(dst, src, src_size); } } #endif #endif #undef __DEF_IF_HOST #undef __SM_80_RT_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_80_rt.hpp" #endif #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_80_RT_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_80_RT_H__ #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/sm_90_rt.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/sm_90_rt.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_90_RT_H__ #endif #if !defined(__SM_90_RT_H__) #define __SM_90_RT_H__ #if defined(__CUDACC_RTC__) #define __SM_90_RT_DECL__ __host__ __device__ #else #define __SM_90_RT_DECL__ static __device__ __inline__ #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 900 #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #ifndef __CUDA_ARCH__ #define __DEF_IF_HOST { } #else #define __DEF_IF_HOST ; #endif __SM_90_RT_DECL__ unsigned __isCtaShared(const void *ptr) __DEF_IF_HOST __SM_90_RT_DECL__ unsigned __isClusterShared(const void *ptr) __DEF_IF_HOST __SM_90_RT_DECL__ void *__cluster_map_shared_rank(const void *ptr, unsigned target_block_rank) __DEF_IF_HOST __SM_90_RT_DECL__ unsigned __cluster_query_shared_rank(const void *ptr) __DEF_IF_HOST __SM_90_RT_DECL__ uint2 __cluster_map_shared_multicast(const void *ptr, unsigned cluster_cta_mask) __DEF_IF_HOST __SM_90_RT_DECL__ unsigned __clusterDimIsSpecified() __DEF_IF_HOST __SM_90_RT_DECL__ dim3 __clusterDim() __DEF_IF_HOST __SM_90_RT_DECL__ dim3 __clusterRelativeBlockIdx() __DEF_IF_HOST __SM_90_RT_DECL__ dim3 __clusterGridDimInClusters() __DEF_IF_HOST __SM_90_RT_DECL__ dim3 __clusterIdx() __DEF_IF_HOST __SM_90_RT_DECL__ unsigned __clusterRelativeBlockRank() __DEF_IF_HOST __SM_90_RT_DECL__ unsigned __clusterSizeInBlocks() __DEF_IF_HOST __SM_90_RT_DECL__ void __cluster_barrier_arrive() __DEF_IF_HOST __SM_90_RT_DECL__ void __cluster_barrier_arrive_relaxed() __DEF_IF_HOST __SM_90_RT_DECL__ void __cluster_barrier_wait() __DEF_IF_HOST __SM_90_RT_DECL__ void __threadfence_cluster() __DEF_IF_HOST __SM_90_RT_DECL__ float2 atomicAdd(float2 *address, float2 val) __DEF_IF_HOST __SM_90_RT_DECL__ float2 atomicAdd_block(float2 *address, float2 val) __DEF_IF_HOST __SM_90_RT_DECL__ float2 atomicAdd_system(float2 *address, float2 val) __DEF_IF_HOST __SM_90_RT_DECL__ float4 atomicAdd(float4 *address, float4 val) __DEF_IF_HOST __SM_90_RT_DECL__ float4 atomicAdd_block(float4 *address, float4 val) __DEF_IF_HOST __SM_90_RT_DECL__ float4 atomicAdd_system(float4 *address, float4 val) __DEF_IF_HOST #endif #endif #undef __DEF_IF_HOST #undef __SM_90_RT_DECL__ #if !defined(__CUDACC_RTC__) && defined(__CUDA_ARCH__) #include "sm_90_rt.hpp" #endif #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_90_RT_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_SM_90_RT_H__ #endif #ifndef __TEXTURE_INDIRECT_FUNCTIONS_H__ #define __TEXTURE_INDIRECT_FUNCTIONS_H__ #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif #if defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 600) #define __NV_TEX_SPARSE 1 #endif template <typename T> struct __nv_itex_trait { }; template<> struct __nv_itex_trait<char> { typedef void type; }; template<> struct __nv_itex_trait<signed char> { typedef void type; }; template<> struct __nv_itex_trait<char1> { typedef void type; }; template<> struct __nv_itex_trait<char2> { typedef void type; }; template<> struct __nv_itex_trait<char4> { typedef void type; }; template<> struct __nv_itex_trait<unsigned char> { typedef void type; }; template<> struct __nv_itex_trait<uchar1> { typedef void type; }; template<> struct __nv_itex_trait<uchar2> { typedef void type; }; template<> struct __nv_itex_trait<uchar4> { typedef void type; }; template<> struct __nv_itex_trait<short> { typedef void type; }; template<> struct __nv_itex_trait<short1> { typedef void type; }; template<> struct __nv_itex_trait<short2> { typedef void type; }; template<> struct __nv_itex_trait<short4> { typedef void type; }; template<> struct __nv_itex_trait<unsigned short> { typedef void type; }; template<> struct __nv_itex_trait<ushort1> { typedef void type; }; template<> struct __nv_itex_trait<ushort2> { typedef void type; }; template<> struct __nv_itex_trait<ushort4> { typedef void type; }; template<> struct __nv_itex_trait<int> { typedef void type; }; template<> struct __nv_itex_trait<int1> { typedef void type; }; template<> struct __nv_itex_trait<int2> { typedef void type; }; template<> struct __nv_itex_trait<int4> { typedef void type; }; template<> struct __nv_itex_trait<unsigned int> { typedef void type; }; template<> struct __nv_itex_trait<uint1> { typedef void type; }; template<> struct __nv_itex_trait<uint2> { typedef void type; }; template<> struct __nv_itex_trait<uint4> { typedef void type; }; #if !defined(__LP64__) template<> struct __nv_itex_trait<long> { typedef void type; }; template<> struct __nv_itex_trait<long1> { typedef void type; }; template<> struct __nv_itex_trait<long2> { typedef void type; }; template<> struct __nv_itex_trait<long4> { typedef void type; }; template<> struct __nv_itex_trait<unsigned long> { typedef void type; }; template<> struct __nv_itex_trait<ulong1> { typedef void type; }; template<> struct __nv_itex_trait<ulong2> { typedef void type; }; template<> struct __nv_itex_trait<ulong4> { typedef void type; }; #endif template<> struct __nv_itex_trait<float> { typedef void type; }; template<> struct __nv_itex_trait<float1> { typedef void type; }; template<> struct __nv_itex_trait<float2> { typedef void type; }; template<> struct __nv_itex_trait<float4> { typedef void type; }; template <typename T> static __device__ typename __nv_itex_trait<T>::type tex1Dfetch(T *ptr, cudaTextureObject_t obj, int x) { __nv_tex_surf_handler("__itex1Dfetch", ptr, obj, x); } template <class T> static __device__ T tex1Dfetch(cudaTextureObject_t texObject, int x) { T ret; tex1Dfetch(&ret, texObject, x); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex1D(T *ptr, cudaTextureObject_t obj, float x) { __nv_tex_surf_handler("__itex1D", ptr, obj, x); } template <class T> static __device__ T tex1D(cudaTextureObject_t texObject, float x) { T ret; tex1D(&ret, texObject, x); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2D(T *ptr, cudaTextureObject_t obj, float x, float y) { __nv_tex_surf_handler("__itex2D", ptr, obj, x, y); } template <class T> static __device__ T tex2D(cudaTextureObject_t texObject, float x, float y) { T ret; tex2D(&ret, texObject, x, y); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2D(T *ptr, cudaTextureObject_t obj, float x, float y, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex2D_sparse", ptr, obj, x, y, &res); *isResident = (res != 0); } template <class T> static __device__ T tex2D(cudaTextureObject_t texObject, float x, float y, bool* isResident) { T ret; tex2D(&ret, texObject, x, y, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type tex3D(T *ptr, cudaTextureObject_t obj, float x, float y, float z) { __nv_tex_surf_handler("__itex3D", ptr, obj, x, y, z); } template <class T> static __device__ T tex3D(cudaTextureObject_t texObject, float x, float y, float z) { T ret; tex3D(&ret, texObject, x, y, z); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex3D(T *ptr, cudaTextureObject_t obj, float x, float y, float z, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex3D_sparse", ptr, obj, x, y, z, &res); *isResident = (res != 0); } template <class T> static __device__ T tex3D(cudaTextureObject_t texObject, float x, float y, float z, bool* isResident) { T ret; tex3D(&ret, texObject, x, y, z, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type tex1DLayered(T *ptr, cudaTextureObject_t obj, float x, int layer) { __nv_tex_surf_handler("__itex1DLayered", ptr, obj, x, layer); } template <class T> static __device__ T tex1DLayered(cudaTextureObject_t texObject, float x, int layer) { T ret; tex1DLayered(&ret, texObject, x, layer); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DLayered(T *ptr, cudaTextureObject_t obj, float x, float y, int layer) { __nv_tex_surf_handler("__itex2DLayered", ptr, obj, x, y, layer); } template <class T> static __device__ T tex2DLayered(cudaTextureObject_t texObject, float x, float y, int layer) { T ret; tex2DLayered(&ret, texObject, x, y, layer); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DLayered(T *ptr, cudaTextureObject_t obj, float x, float y, int layer, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex2DLayered_sparse", ptr, obj, x, y, layer, &res); *isResident = (res != 0); } template <class T> static __device__ T tex2DLayered(cudaTextureObject_t texObject, float x, float y, int layer, bool* isResident) { T ret; tex2DLayered(&ret, texObject, x, y, layer, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type texCubemap(T *ptr, cudaTextureObject_t obj, float x, float y, float z) { __nv_tex_surf_handler("__itexCubemap", ptr, obj, x, y, z); } template <class T> static __device__ T texCubemap(cudaTextureObject_t texObject, float x, float y, float z) { T ret; texCubemap(&ret, texObject, x, y, z); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type texCubemapLayered(T *ptr, cudaTextureObject_t obj, float x, float y, float z, int layer) { __nv_tex_surf_handler("__itexCubemapLayered", ptr, obj, x, y, z, layer); } template <class T> static __device__ T texCubemapLayered(cudaTextureObject_t texObject, float x, float y, float z, int layer) { T ret; texCubemapLayered(&ret, texObject, x, y, z, layer); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2Dgather(T *ptr, cudaTextureObject_t obj, float x, float y, int comp = 0) { __nv_tex_surf_handler("__itex2Dgather", ptr, obj, x, y, comp); } template <class T> static __device__ T tex2Dgather(cudaTextureObject_t to, float x, float y, int comp = 0) { T ret; tex2Dgather(&ret, to, x, y, comp); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2Dgather(T *ptr, cudaTextureObject_t obj, float x, float y, bool* isResident, int comp = 0) { unsigned char res; __nv_tex_surf_handler("__itex2Dgather_sparse", ptr, obj, x, y, comp, &res); *isResident = (res != 0); } template <class T> static __device__ T tex2Dgather(cudaTextureObject_t to, float x, float y, bool* isResident, int comp = 0) { T ret; tex2Dgather(&ret, to, x, y, isResident, comp); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type tex1DLod(T *ptr, cudaTextureObject_t obj, float x, float level) { __nv_tex_surf_handler("__itex1DLod", ptr, obj, x, level); } template <class T> static __device__ T tex1DLod(cudaTextureObject_t texObject, float x, float level) { T ret; tex1DLod(&ret, texObject, x, level); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DLod(T *ptr, cudaTextureObject_t obj, float x, float y, float level) { __nv_tex_surf_handler("__itex2DLod", ptr, obj, x, y, level); } template <class T> static __device__ T tex2DLod(cudaTextureObject_t texObject, float x, float y, float level) { T ret; tex2DLod(&ret, texObject, x, y, level); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DLod(T *ptr, cudaTextureObject_t obj, float x, float y, float level, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex2DLod_sparse", ptr, obj, x, y, level, &res); *isResident = (res != 0); } template <class T> static __device__ T tex2DLod(cudaTextureObject_t texObject, float x, float y, float level, bool* isResident) { T ret; tex2DLod(&ret, texObject, x, y, level, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type tex3DLod(T *ptr, cudaTextureObject_t obj, float x, float y, float z, float level) { __nv_tex_surf_handler("__itex3DLod", ptr, obj, x, y, z, level); } template <class T> static __device__ T tex3DLod(cudaTextureObject_t texObject, float x, float y, float z, float level) { T ret; tex3DLod(&ret, texObject, x, y, z, level); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex3DLod(T *ptr, cudaTextureObject_t obj, float x, float y, float z, float level, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex3DLod_sparse", ptr, obj, x, y, z, level, &res); *isResident = (res != 0); } template <class T> static __device__ T tex3DLod(cudaTextureObject_t texObject, float x, float y, float z, float level, bool* isResident) { T ret; tex3DLod(&ret, texObject, x, y, z, level, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type tex1DLayeredLod(T *ptr, cudaTextureObject_t obj, float x, int layer, float level) { __nv_tex_surf_handler("__itex1DLayeredLod", ptr, obj, x, layer, level); } template <class T> static __device__ T tex1DLayeredLod(cudaTextureObject_t texObject, float x, int layer, float level) { T ret; tex1DLayeredLod(&ret, texObject, x, layer, level); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DLayeredLod(T *ptr, cudaTextureObject_t obj, float x, float y, int layer, float level) { __nv_tex_surf_handler("__itex2DLayeredLod", ptr, obj, x, y, layer, level); } template <class T> static __device__ T tex2DLayeredLod(cudaTextureObject_t texObject, float x, float y, int layer, float level) { T ret; tex2DLayeredLod(&ret, texObject, x, y, layer, level); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DLayeredLod(T *ptr, cudaTextureObject_t obj, float x, float y, int layer, float level, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex2DLayeredLod_sparse", ptr, obj, x, y, layer, level, &res); *isResident = (res != 0); } template <class T> static __device__ T tex2DLayeredLod(cudaTextureObject_t texObject, float x, float y, int layer, float level, bool* isResident) { T ret; tex2DLayeredLod(&ret, texObject, x, y, layer, level, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type texCubemapLod(T *ptr, cudaTextureObject_t obj, float x, float y, float z, float level) { __nv_tex_surf_handler("__itexCubemapLod", ptr, obj, x, y, z, level); } template <class T> static __device__ T texCubemapLod(cudaTextureObject_t texObject, float x, float y, float z, float level) { T ret; texCubemapLod(&ret, texObject, x, y, z, level); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type texCubemapGrad(T *ptr, cudaTextureObject_t obj, float x, float y, float z, float4 dPdx, float4 dPdy) { __nv_tex_surf_handler("__itexCubemapGrad_v2", ptr, obj, x, y, z, &dPdx, &dPdy); } template <class T> static __device__ T texCubemapGrad(cudaTextureObject_t texObject, float x, float y, float z, float4 dPdx, float4 dPdy) { T ret; texCubemapGrad(&ret, texObject, x, y, z, dPdx, dPdy); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type texCubemapLayeredLod(T *ptr, cudaTextureObject_t obj, float x, float y, float z, int layer, float level) { __nv_tex_surf_handler("__itexCubemapLayeredLod", ptr, obj, x, y, z, layer, level); } template <class T> static __device__ T texCubemapLayeredLod(cudaTextureObject_t texObject, float x, float y, float z, int layer, float level) { T ret; texCubemapLayeredLod(&ret, texObject, x, y, z, layer, level); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex1DGrad(T *ptr, cudaTextureObject_t obj, float x, float dPdx, float dPdy) { __nv_tex_surf_handler("__itex1DGrad", ptr, obj, x, dPdx, dPdy); } template <class T> static __device__ T tex1DGrad(cudaTextureObject_t texObject, float x, float dPdx, float dPdy) { T ret; tex1DGrad(&ret, texObject, x, dPdx, dPdy); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DGrad(T *ptr, cudaTextureObject_t obj, float x, float y, float2 dPdx, float2 dPdy) { __nv_tex_surf_handler("__itex2DGrad_v2", ptr, obj, x, y, &dPdx, &dPdy); } template <class T> static __device__ T tex2DGrad(cudaTextureObject_t texObject, float x, float y, float2 dPdx, float2 dPdy) { T ret; tex2DGrad(&ret, texObject, x, y, dPdx, dPdy); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DGrad(T *ptr, cudaTextureObject_t obj, float x, float y, float2 dPdx, float2 dPdy, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex2DGrad_sparse", ptr, obj, x, y, &dPdx, &dPdy, &res); *isResident = (res != 0); } template <class T> static __device__ T tex2DGrad(cudaTextureObject_t texObject, float x, float y, float2 dPdx, float2 dPdy, bool* isResident) { T ret; tex2DGrad(&ret, texObject, x, y, dPdx, dPdy, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type tex3DGrad(T *ptr, cudaTextureObject_t obj, float x, float y, float z, float4 dPdx, float4 dPdy) { __nv_tex_surf_handler("__itex3DGrad_v2", ptr, obj, x, y, z, &dPdx, &dPdy); } template <class T> static __device__ T tex3DGrad(cudaTextureObject_t texObject, float x, float y, float z, float4 dPdx, float4 dPdy) { T ret; tex3DGrad(&ret, texObject, x, y, z, dPdx, dPdy); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex3DGrad(T *ptr, cudaTextureObject_t obj, float x, float y, float z, float4 dPdx, float4 dPdy, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex3DGrad_sparse", ptr, obj, x, y, z, &dPdx, &dPdy, &res); *isResident = (res != 0); } template <class T> static __device__ T tex3DGrad(cudaTextureObject_t texObject, float x, float y, float z, float4 dPdx, float4 dPdy, bool* isResident) { T ret; tex3DGrad(&ret, texObject, x, y, z, dPdx, dPdy, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type tex1DLayeredGrad(T *ptr, cudaTextureObject_t obj, float x, int layer, float dPdx, float dPdy) { __nv_tex_surf_handler("__itex1DLayeredGrad", ptr, obj, x, layer, dPdx, dPdy); } template <class T> static __device__ T tex1DLayeredGrad(cudaTextureObject_t texObject, float x, int layer, float dPdx, float dPdy) { T ret; tex1DLayeredGrad(&ret, texObject, x, layer, dPdx, dPdy); return ret; } template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DLayeredGrad(T * ptr, cudaTextureObject_t obj, float x, float y, int layer, float2 dPdx, float2 dPdy) { __nv_tex_surf_handler("__itex2DLayeredGrad_v2", ptr, obj, x, y, layer, &dPdx, &dPdy); } template <class T> static __device__ T tex2DLayeredGrad(cudaTextureObject_t texObject, float x, float y, int layer, float2 dPdx, float2 dPdy) { T ret; tex2DLayeredGrad(&ret, texObject, x, y, layer, dPdx, dPdy); return ret; } #if __NV_TEX_SPARSE template <typename T> static __device__ typename __nv_itex_trait<T>::type tex2DLayeredGrad(T * ptr, cudaTextureObject_t obj, float x, float y, int layer, float2 dPdx, float2 dPdy, bool* isResident) { unsigned char res; __nv_tex_surf_handler("__itex2DLayeredGrad_sparse", ptr, obj, x, y, layer, &dPdx, &dPdy, &res); *isResident = (res != 0); } template <class T> static __device__ T tex2DLayeredGrad(cudaTextureObject_t texObject, float x, float y, int layer, float2 dPdx, float2 dPdy, bool* isResident) { T ret; tex2DLayeredGrad(&ret, texObject, x, y, layer, dPdx, dPdy, isResident); return ret; } #endif template <typename T> static __device__ typename __nv_itex_trait<T>::type texCubemapLayeredGrad(T *ptr, cudaTextureObject_t obj, float x, float y, float z, int layer, float4 dPdx, float4 dPdy) { __nv_tex_surf_handler("__itexCubemapLayeredGrad_v2", ptr, obj, x, y, z, layer, &dPdx, &dPdy); } template <class T> static __device__ T texCubemapLayeredGrad(cudaTextureObject_t texObject, float x, float y, float z, int layer, float4 dPdx, float4 dPdy) { T ret; texCubemapLayeredGrad(&ret, texObject, x, y, z, layer, dPdx, dPdy); return ret; } #undef __NV_TEX_SPARSE #endif #endif #ifndef __SURFACE_INDIRECT_FUNCTIONS_H__ #define __SURFACE_INDIRECT_FUNCTIONS_H__ #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_RUNTIME_API_H__) #define __CUDA_RUNTIME_API_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #define CUDART_VERSION 12010 #if defined(__CUDA_API_VER_MAJOR__) && defined(__CUDA_API_VER_MINOR__) # define __CUDART_API_VERSION ((__CUDA_API_VER_MAJOR__ * 1000) + (__CUDA_API_VER_MINOR__ * 10)) #else # define __CUDART_API_VERSION CUDART_VERSION #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) || defined(__CUDA_API_VERSION_INTERNAL) #define __CUDART_API_PER_THREAD_DEFAULT_STREAM #define __CUDART_API_PTDS(api) api ## _ptds #define __CUDART_API_PTSZ(api) api ## _ptsz #else #define __CUDART_API_PTDS(api) api #define __CUDART_API_PTSZ(api) api #endif #define cudaSignalExternalSemaphoresAsync __CUDART_API_PTSZ(cudaSignalExternalSemaphoresAsync_v2) #define cudaWaitExternalSemaphoresAsync __CUDART_API_PTSZ(cudaWaitExternalSemaphoresAsync_v2) #define cudaStreamGetCaptureInfo __CUDART_API_PTSZ(cudaStreamGetCaptureInfo_v2) #define cudaGetDeviceProperties cudaGetDeviceProperties_v2 #if defined(__CUDART_API_PER_THREAD_DEFAULT_STREAM) #define cudaMemcpy __CUDART_API_PTDS(cudaMemcpy) #define cudaMemcpyToSymbol __CUDART_API_PTDS(cudaMemcpyToSymbol) #define cudaMemcpyFromSymbol __CUDART_API_PTDS(cudaMemcpyFromSymbol) #define cudaMemcpy2D __CUDART_API_PTDS(cudaMemcpy2D) #define cudaMemcpyToArray __CUDART_API_PTDS(cudaMemcpyToArray) #define cudaMemcpy2DToArray __CUDART_API_PTDS(cudaMemcpy2DToArray) #define cudaMemcpyFromArray __CUDART_API_PTDS(cudaMemcpyFromArray) #define cudaMemcpy2DFromArray __CUDART_API_PTDS(cudaMemcpy2DFromArray) #define cudaMemcpyArrayToArray __CUDART_API_PTDS(cudaMemcpyArrayToArray) #define cudaMemcpy2DArrayToArray __CUDART_API_PTDS(cudaMemcpy2DArrayToArray) #define cudaMemcpy3D __CUDART_API_PTDS(cudaMemcpy3D) #define cudaMemcpy3DPeer __CUDART_API_PTDS(cudaMemcpy3DPeer) #define cudaMemset __CUDART_API_PTDS(cudaMemset) #define cudaMemset2D __CUDART_API_PTDS(cudaMemset2D) #define cudaMemset3D __CUDART_API_PTDS(cudaMemset3D) #define cudaGraphInstantiateWithParams __CUDART_API_PTSZ(cudaGraphInstantiateWithParams) #define cudaGraphUpload __CUDART_API_PTSZ(cudaGraphUpload) #define cudaGraphLaunch __CUDART_API_PTSZ(cudaGraphLaunch) #define cudaStreamBeginCapture __CUDART_API_PTSZ(cudaStreamBeginCapture) #define cudaStreamEndCapture __CUDART_API_PTSZ(cudaStreamEndCapture) #define cudaStreamIsCapturing __CUDART_API_PTSZ(cudaStreamIsCapturing) #define cudaMemcpyAsync __CUDART_API_PTSZ(cudaMemcpyAsync) #define cudaMemcpyToSymbolAsync __CUDART_API_PTSZ(cudaMemcpyToSymbolAsync) #define cudaMemcpyFromSymbolAsync __CUDART_API_PTSZ(cudaMemcpyFromSymbolAsync) #define cudaMemcpy2DAsync __CUDART_API_PTSZ(cudaMemcpy2DAsync) #define cudaMemcpyToArrayAsync __CUDART_API_PTSZ(cudaMemcpyToArrayAsync) #define cudaMemcpy2DToArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DToArrayAsync) #define cudaMemcpyFromArrayAsync __CUDART_API_PTSZ(cudaMemcpyFromArrayAsync) #define cudaMemcpy2DFromArrayAsync __CUDART_API_PTSZ(cudaMemcpy2DFromArrayAsync) #define cudaMemcpy3DAsync __CUDART_API_PTSZ(cudaMemcpy3DAsync) #define cudaMemcpy3DPeerAsync __CUDART_API_PTSZ(cudaMemcpy3DPeerAsync) #define cudaMemsetAsync __CUDART_API_PTSZ(cudaMemsetAsync) #define cudaMemset2DAsync __CUDART_API_PTSZ(cudaMemset2DAsync) #define cudaMemset3DAsync __CUDART_API_PTSZ(cudaMemset3DAsync) #define cudaStreamQuery __CUDART_API_PTSZ(cudaStreamQuery) #define cudaStreamGetFlags __CUDART_API_PTSZ(cudaStreamGetFlags) #define cudaStreamGetId __CUDART_API_PTSZ(cudaStreamGetId) #define cudaStreamGetPriority __CUDART_API_PTSZ(cudaStreamGetPriority) #define cudaEventRecord __CUDART_API_PTSZ(cudaEventRecord) #define cudaEventRecordWithFlags __CUDART_API_PTSZ(cudaEventRecordWithFlags) #define cudaStreamWaitEvent __CUDART_API_PTSZ(cudaStreamWaitEvent) #define cudaStreamAddCallback __CUDART_API_PTSZ(cudaStreamAddCallback) #define cudaStreamAttachMemAsync __CUDART_API_PTSZ(cudaStreamAttachMemAsync) #define cudaStreamSynchronize __CUDART_API_PTSZ(cudaStreamSynchronize) #define cudaLaunchKernel __CUDART_API_PTSZ(cudaLaunchKernel) #define cudaLaunchKernelExC __CUDART_API_PTSZ(cudaLaunchKernelExC) #define cudaLaunchHostFunc __CUDART_API_PTSZ(cudaLaunchHostFunc) #define cudaMemPrefetchAsync __CUDART_API_PTSZ(cudaMemPrefetchAsync) #define cudaLaunchCooperativeKernel __CUDART_API_PTSZ(cudaLaunchCooperativeKernel) #define cudaStreamCopyAttributes __CUDART_API_PTSZ(cudaStreamCopyAttributes) #define cudaStreamGetAttribute __CUDART_API_PTSZ(cudaStreamGetAttribute) #define cudaStreamSetAttribute __CUDART_API_PTSZ(cudaStreamSetAttribute) #define cudaMallocAsync __CUDART_API_PTSZ(cudaMallocAsync) #define cudaFreeAsync __CUDART_API_PTSZ(cudaFreeAsync) #define cudaMallocFromPoolAsync __CUDART_API_PTSZ(cudaMallocFromPoolAsync) #define cudaGetDriverEntryPoint __CUDART_API_PTSZ(cudaGetDriverEntryPoint) #endif #if !defined(__dv) #if defined(__cplusplus) #define __dv(v) \ = v #else #define __dv(v) #endif #endif #if (defined(_NVHPC_CUDA) || !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350)) #define CUDART_DEVICE __device__ #else #define CUDART_DEVICE #endif #if !defined(__CUDACC_RTC__) #endif #undef __dv #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_API_H__ #endif #endif template<typename T> struct __nv_isurf_trait { }; template<> struct __nv_isurf_trait<char> { typedef void type; }; template<> struct __nv_isurf_trait<signed char> { typedef void type; }; template<> struct __nv_isurf_trait<char1> { typedef void type; }; template<> struct __nv_isurf_trait<unsigned char> { typedef void type; }; template<> struct __nv_isurf_trait<uchar1> { typedef void type; }; template<> struct __nv_isurf_trait<short> { typedef void type; }; template<> struct __nv_isurf_trait<short1> { typedef void type; }; template<> struct __nv_isurf_trait<unsigned short> { typedef void type; }; template<> struct __nv_isurf_trait<ushort1> { typedef void type; }; template<> struct __nv_isurf_trait<int> { typedef void type; }; template<> struct __nv_isurf_trait<int1> { typedef void type; }; template<> struct __nv_isurf_trait<unsigned int> { typedef void type; }; template<> struct __nv_isurf_trait<uint1> { typedef void type; }; template<> struct __nv_isurf_trait<long long> { typedef void type; }; template<> struct __nv_isurf_trait<longlong1> { typedef void type; }; template<> struct __nv_isurf_trait<unsigned long long> { typedef void type; }; template<> struct __nv_isurf_trait<ulonglong1> { typedef void type; }; template<> struct __nv_isurf_trait<float> { typedef void type; }; template<> struct __nv_isurf_trait<float1> { typedef void type; }; template<> struct __nv_isurf_trait<char2> { typedef void type; }; template<> struct __nv_isurf_trait<uchar2> { typedef void type; }; template<> struct __nv_isurf_trait<short2> { typedef void type; }; template<> struct __nv_isurf_trait<ushort2> { typedef void type; }; template<> struct __nv_isurf_trait<int2> { typedef void type; }; template<> struct __nv_isurf_trait<uint2> { typedef void type; }; template<> struct __nv_isurf_trait<longlong2> { typedef void type; }; template<> struct __nv_isurf_trait<ulonglong2> { typedef void type; }; template<> struct __nv_isurf_trait<float2> { typedef void type; }; template<> struct __nv_isurf_trait<char4> { typedef void type; }; template<> struct __nv_isurf_trait<uchar4> { typedef void type; }; template<> struct __nv_isurf_trait<short4> { typedef void type; }; template<> struct __nv_isurf_trait<ushort4> { typedef void type; }; template<> struct __nv_isurf_trait<int4> { typedef void type; }; template<> struct __nv_isurf_trait<uint4> { typedef void type; }; template<> struct __nv_isurf_trait<float4> { typedef void type; }; template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf1Dread(T *ptr, cudaSurfaceObject_t obj, int x, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf1Dread", ptr, obj, x, mode); } template <class T> static __device__ T surf1Dread(cudaSurfaceObject_t surfObject, int x, cudaSurfaceBoundaryMode boundaryMode = cudaBoundaryModeTrap) { T ret; surf1Dread(&ret, surfObject, x, boundaryMode); return ret; } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf2Dread(T *ptr, cudaSurfaceObject_t obj, int x, int y, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf2Dread", ptr, obj, x, y, mode); } template <class T> static __device__ T surf2Dread(cudaSurfaceObject_t surfObject, int x, int y, cudaSurfaceBoundaryMode boundaryMode = cudaBoundaryModeTrap) { T ret; surf2Dread(&ret, surfObject, x, y, boundaryMode); return ret; } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf3Dread(T *ptr, cudaSurfaceObject_t obj, int x, int y, int z, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf3Dread", ptr, obj, x, y, z, mode); } template <class T> static __device__ T surf3Dread(cudaSurfaceObject_t surfObject, int x, int y, int z, cudaSurfaceBoundaryMode boundaryMode = cudaBoundaryModeTrap) { T ret; surf3Dread(&ret, surfObject, x, y, z, boundaryMode); return ret; } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf1DLayeredread(T *ptr, cudaSurfaceObject_t obj, int x, int layer, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf1DLayeredread", ptr, obj, x, layer, mode); } template <class T> static __device__ T surf1DLayeredread(cudaSurfaceObject_t surfObject, int x, int layer, cudaSurfaceBoundaryMode boundaryMode = cudaBoundaryModeTrap) { T ret; surf1DLayeredread(&ret, surfObject, x, layer, boundaryMode); return ret; } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf2DLayeredread(T *ptr, cudaSurfaceObject_t obj, int x, int y, int layer, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf2DLayeredread", ptr, obj, x, y, layer, mode); } template <class T> static __device__ T surf2DLayeredread(cudaSurfaceObject_t surfObject, int x, int y, int layer, cudaSurfaceBoundaryMode boundaryMode = cudaBoundaryModeTrap) { T ret; surf2DLayeredread(&ret, surfObject, x, y, layer, boundaryMode); return ret; } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surfCubemapread(T *ptr, cudaSurfaceObject_t obj, int x, int y, int face, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurfCubemapread", ptr, obj, x, y, face, mode); } template <class T> static __device__ T surfCubemapread(cudaSurfaceObject_t surfObject, int x, int y, int face, cudaSurfaceBoundaryMode boundaryMode = cudaBoundaryModeTrap) { T ret; surfCubemapread(&ret, surfObject, x, y, face, boundaryMode); return ret; } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surfCubemapLayeredread(T *ptr, cudaSurfaceObject_t obj, int x, int y, int layerface, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurfCubemapLayeredread", ptr, obj, x, y, layerface, mode); } template <class T> static __device__ T surfCubemapLayeredread(cudaSurfaceObject_t surfObject, int x, int y, int layerface, cudaSurfaceBoundaryMode boundaryMode = cudaBoundaryModeTrap) { T ret; surfCubemapLayeredread(&ret, surfObject, x, y, layerface, boundaryMode); return ret; } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf1Dwrite(T val, cudaSurfaceObject_t obj, int x, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf1Dwrite_v2", &val, obj, x, mode); } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf2Dwrite(T val, cudaSurfaceObject_t obj, int x, int y, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf2Dwrite_v2", &val, obj, x, y, mode); } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf3Dwrite(T val, cudaSurfaceObject_t obj, int x, int y, int z, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf3Dwrite_v2", &val, obj, x, y, z, mode); } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf1DLayeredwrite(T val, cudaSurfaceObject_t obj, int x, int layer, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf1DLayeredwrite_v2", &val, obj, x, layer, mode); } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surf2DLayeredwrite(T val, cudaSurfaceObject_t obj, int x, int y, int layer, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurf2DLayeredwrite_v2", &val, obj, x, y, layer, mode); } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surfCubemapwrite(T val, cudaSurfaceObject_t obj, int x, int y, int face, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurfCubemapwrite_v2", &val, obj, x, y, face, mode); } template <typename T> static __device__ typename __nv_isurf_trait<T>::type surfCubemapLayeredwrite(T val, cudaSurfaceObject_t obj, int x, int y, int layerface, cudaSurfaceBoundaryMode mode = cudaBoundaryModeTrap) { __nv_tex_surf_handler("__isurfCubemapLayeredwrite_v2", &val, obj, x, y, layerface, mode); } #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/cudacc_ext.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/cudacc_ext.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDACC_EXT_H__ #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDACC_EXT_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDACC_EXT_H__ #endif #ifdef __CUDACC__ extern "C" __host__ __device__ unsigned CUDARTAPI __cudaPushCallConfiguration(dim3 gridDim, dim3 blockDim, size_t sharedMem = 0, struct CUstream_st *stream = 0); #endif #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_FUNCTIONS_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_FUNCTIONS_H__ #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/common_functions.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/common_functions.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_COMMON_FUNCTIONS_H__ #endif #if !defined(__COMMON_FUNCTIONS_H__) #define __COMMON_FUNCTIONS_H__ #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define __CUDACC_VER__ "__CUDACC_VER__ is no longer supported. Use __CUDACC_VER_MAJOR__, __CUDACC_VER_MINOR__, and __CUDACC_VER_BUILD__ instead." #ifndef __CUDA_API_VER_MAJOR__ #define __CUDA_API_VER_MAJOR__ __CUDACC_VER_MAJOR__ #endif #ifndef __CUDA_API_VER_MINOR__ #define __CUDA_API_VER_MINOR__ __CUDACC_VER_MINOR__ #endif #if !defined(__CUDACC_RTC__) #include <string.h> #include <time.h> extern "C" { #endif extern _CRTIMP __host__ __device__ __device_builtin__ __cudart_builtin__ clock_t __cdecl clock(void) #if defined(__QNX__) asm("clock32") #endif __THROW; extern __host__ __device__ __device_builtin__ __cudart_builtin__ void* __cdecl memset(void*, int, size_t) __THROW; extern __host__ __device__ __device_builtin__ __cudart_builtin__ void* __cdecl memcpy(void*, const void*, size_t) __THROW; #if !defined(__CUDACC_RTC__) } #endif #if defined(__CUDA_ARCH__) #if defined(__CUDACC_RTC__) inline __host__ __device__ void* operator new(size_t, void *p) { return p; } inline __host__ __device__ void* operator new[](size_t, void *p) { return p; } inline __host__ __device__ void operator delete(void*, void*) { } inline __host__ __device__ void operator delete[](void*, void*) { } #else #ifndef __CUDA_INTERNAL_SKIP_CPP_HEADERS__ #include <new> #endif #if defined (__GNUC__) #define STD \ std:: #else #define STD #endif extern __host__ __device__ __cudart_builtin__ void* __cdecl operator new(STD size_t, void*) throw(); extern __host__ __device__ __cudart_builtin__ void* __cdecl operator new[](STD size_t, void*) throw(); extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete(void*, void*) throw(); extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete[](void*, void*) throw(); # if __cplusplus >= 201402L || (defined(_MSC_VER) && _MSC_VER >= 1900) || defined(__CUDA_XLC_CPP14__) || defined(__CUDA_ICC_CPP14__) extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete(void*, STD size_t) throw(); extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete[](void*, STD size_t) throw(); #endif #endif #if !defined(__CUDACC_RTC__) #include <stdio.h> #include <stdlib.h> #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern "C" { extern #if !defined(_MSC_VER) || _MSC_VER < 1900 _CRTIMP #endif #if defined(__GLIBC__) && defined(__GLIBC_MINOR__) && ( (__GLIBC__ < 2) || ( (__GLIBC__ == 2) && (__GLIBC_MINOR__ < 3) ) ) __host__ __device__ __device_builtin__ __cudart_builtin__ int __cdecl printf(const char*, ...) __THROW; #else __host__ __device__ __device_builtin__ __cudart_builtin__ int __cdecl printf(const char*, ...); #endif extern _CRTIMP __host__ __device__ __cudart_builtin__ void* __cdecl malloc(size_t) __THROW; extern _CRTIMP __host__ __device__ __cudart_builtin__ void __cdecl free(void*) __THROW; #if defined(_MSC_VER) extern __host__ __device__ __cudart_builtin__ void* __cdecl _alloca(size_t); #endif #if defined(__QNX__) #undef alloca #define alloca(__S) __builtin_alloca(__S) #endif } #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif #if !defined(__CUDACC_RTC__) #include <assert.h> #endif extern "C" { #if defined(__CUDACC_RTC__) extern __host__ __device__ void __assertfail(const char * __assertion, const char *__file, unsigned int __line, const char *__function, size_t charsize); #elif defined(__APPLE__) #define __builtin_expect(exp,c) (exp) extern __host__ __device__ __cudart_builtin__ void __assert_rtn( const char *, const char *, int, const char *); #elif defined(__ANDROID__) extern __host__ __device__ __cudart_builtin__ void __assert2( const char *, int, const char *, const char *); #elif defined(__QNX__) #if !defined(_LIBCPP_VERSION) namespace std { #endif extern __host__ __device__ __cudart_builtin__ void __assert( const char *, const char *, unsigned int, const char *); #if !defined(_LIBCPP_VERSION) } #endif #elif defined(__HORIZON__) extern __host__ __device__ __cudart_builtin__ void __assert_fail( const char *, const char *, int, const char *); #elif defined(__GNUC__) extern __host__ __device__ __cudart_builtin__ void __assert_fail( const char *, const char *, unsigned int, const char *) __THROW; #elif defined(_WIN32) extern __host__ __device__ __cudart_builtin__ _CRTIMP void __cdecl _wassert( const wchar_t *, const wchar_t *, unsigned); #endif } #if defined(__CUDACC_RTC__) #ifdef NDEBUG #define assert(e) (static_cast<void>(0)) #else #define __ASSERT_STR_HELPER(x) #x #define assert(e) ((e) ? static_cast<void>(0)\ : __assertfail(__ASSERT_STR_HELPER(e), __FILE__,\ __LINE__, __PRETTY_FUNCTION__,\ sizeof(char))) #endif __host__ __device__ void* operator new(size_t); __host__ __device__ void* operator new[](size_t); __host__ __device__ void operator delete(void*); __host__ __device__ void operator delete[](void*); # if __cplusplus >= 201402L __host__ __device__ void operator delete(void*, size_t); __host__ __device__ void operator delete[](void*, size_t); #endif #if __cplusplus >= 201703L namespace std { enum class align_val_t : size_t {}; } __host__ __device__ void* __cdecl operator new(size_t sz, std::align_val_t) noexcept; __host__ __device__ void* __cdecl operator new[](size_t sz, std::align_val_t) noexcept; __host__ __device__ void __cdecl operator delete(void* ptr, std::align_val_t) noexcept; __host__ __device__ void __cdecl operator delete[](void* ptr, std::align_val_t) noexcept; __host__ __device__ void __cdecl operator delete(void* ptr, size_t, std::align_val_t) noexcept; __host__ __device__ void __cdecl operator delete[](void* ptr, size_t, std::align_val_t) noexcept; #endif #else #if defined (__GNUC__) #define __NV_GLIBCXX_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) #if (__cplusplus >= 201103L) && ((!(defined(__QNX__) && defined(_LIBCPP_VERSION))) || (defined(__QNX__) && __NV_GLIBCXX_VERSION >= 80300)) #define THROWBADALLOC #else #if defined(__ANDROID__) && !defined(_LIBCPP_VERSION) && (defined(__BIONIC__) || __NV_GLIBCXX_VERSION < 40900) #define THROWBADALLOC #else #define THROWBADALLOC throw(STD bad_alloc) #endif #endif #define __DELETE_THROW throw() #undef __NV_GLIBCXX_VERSION #else #define THROWBADALLOC throw(...) #endif extern __host__ __device__ __cudart_builtin__ void* __cdecl operator new(STD size_t) THROWBADALLOC; extern __host__ __device__ __cudart_builtin__ void* __cdecl operator new[](STD size_t) THROWBADALLOC; extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete(void*) throw(); extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete[](void*) throw(); # if __cplusplus >= 201402L || (defined(_MSC_VER) && _MSC_VER >= 1900) || defined(__CUDA_XLC_CPP14__) || defined(__CUDA_ICC_CPP14__) extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete(void*, STD size_t) throw(); extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete[](void*, STD size_t) throw(); #endif #if __cpp_aligned_new extern __host__ __device__ __cudart_builtin__ void* __cdecl operator new(STD size_t, std::align_val_t); extern __host__ __device__ __cudart_builtin__ void* __cdecl operator new[](STD size_t, std::align_val_t); extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete(void*, std::align_val_t) noexcept; extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete[](void*, std::align_val_t) noexcept; extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete(void*, STD size_t, std::align_val_t) noexcept; extern __host__ __device__ __cudart_builtin__ void __cdecl operator delete[](void*, STD size_t, std::align_val_t) noexcept; #endif #undef THROWBADALLOC #undef STD #endif #endif #endif #if defined(__CUDACC_RTC__) && (__CUDA_ARCH__ >= 350) #if !defined(__CUDA_DEVICE_RUNTIME_API_H__) #define __CUDA_DEVICE_RUNTIME_API_H__ #if defined(__CUDACC__) && !defined(__CUDACC_RTC__) #include <stdlib.h> #endif #if !defined(CUDA_FORCE_CDP1_IF_SUPPORTED) && !defined(__CUDADEVRT_INTERNAL__) && !defined(_NVHPC_CUDA) && !(defined(_WIN32) && !defined(_WIN64)) #define __CUDA_INTERNAL_USE_CDP2 #endif #if !defined(__CUDACC_RTC__) #if !defined(__CUDACC_INTERNAL_NO_STUBS__) && !defined(__CUDACC_RDC__) && !defined(__CUDACC_EWP__) && defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 350) && !defined(__CUDADEVRT_INTERNAL__) #if defined(__cplusplus) extern "C" { #endif struct cudaFuncAttributes; #ifndef __CUDA_INTERNAL_USE_CDP2 inline __device__ cudaError_t CUDARTAPI cudaMalloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #else inline __device__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **p, size_t s) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *p, const void *c) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return cudaErrorUnknown; } inline __device__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return cudaErrorUnknown; } #endif #if defined(__cplusplus) } #endif #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) # define __DEPRECATED__(msg) #elif defined(_WIN32) # define __DEPRECATED__(msg) __declspec(deprecated(msg)) #elif (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5 && !defined(__clang__)))) # define __DEPRECATED__(msg) __attribute__((deprecated)) #else # define __DEPRECATED__(msg) __attribute__((deprecated(msg))) #endif #if defined(__CUDA_ARCH__) && !defined(__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING) # define __CDPRT_DEPRECATED(func_name) __DEPRECATED__("Use of "#func_name" from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to "#func_name" from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for "#func_name" from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") #else # define __CDPRT_DEPRECATED(func_name) #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__CUDA_ARCH__) || (__CUDA_ARCH__ >= 350) #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #define cudaStreamGraphTailLaunch (cudaStream_t)0x0100000000000000 #define cudaStreamGraphFireAndForget (cudaStream_t)0x0200000000000000 #ifdef __CUDA_INTERNAL_USE_CDP2 #define cudaStreamTailLaunch ((cudaStream_t)0x3) #define cudaStreamFireAndForget ((cudaStream_t)0x4) #endif extern "C" { extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaDeviceSynchronizeDeprecationAvoidance(void); #ifndef __CUDA_INTERNAL_USE_CDP2 extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); #if (__CUDA_ARCH__ < 900) && (defined(CUDA_FORCE_CDP1_IF_SUPPORTED) || (defined(_WIN32) && !defined(_WIN64))) extern __device__ __cudart_builtin__ __CDPRT_DEPRECATED(cudaDeviceSynchronize) cudaError_t CUDARTAPI cudaDeviceSynchronize(void); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetLimit(size_t *pValue, enum cudaLimit limit); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2DeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetLastError(void); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2PeekAtLastError(void); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorString(cudaError_t error); extern __device__ __cudart_builtin__ const char* CUDARTAPI __cudaCDP2GetErrorName(cudaError_t error); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDeviceCount(int *count); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2GetDevice(int *device); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamDestroy(cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2StreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventCreateWithFlags(cudaEvent_t *event, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecord_ptsz(cudaEvent_t event, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2EventDestroy(cudaEvent_t event); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2FuncGetAttributes(struct cudaFuncAttributes *attr, const void *func); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Free(void *devPtr); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Malloc(void **devPtr, size_t size); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2MemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2Memset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2RuntimeGetVersion(int *runtimeVersion); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBuffer(size_t alignment, size_t size); extern __device__ __cudart_builtin__ void * CUDARTAPI __cudaCDP2GetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2LaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream); #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) static inline __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGraphLaunch_ptsz(cudaGraphExec_t graphExec, cudaStream_t stream) { if (stream == 0) { stream = cudaStreamPerThread; } return cudaGraphLaunch(graphExec, stream); } #endif static inline __device__ __cudart_builtin__ cudaGraphExec_t CUDARTAPI cudaGetCurrentGraphExec(void) { unsigned long long current_graph_exec; asm ("mov.u64 %0, %%current_graph_exec;" : "=l"(current_graph_exec)); return (cudaGraphExec_t)current_graph_exec; } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaTriggerProgrammaticLaunchCompletion(void) { asm volatile("griddepcontrol.launch_dependents;":::); } static inline __device__ __cudart_builtin__ void CUDARTAPI cudaGridDependencySynchronize(void) { asm volatile("griddepcontrol.wait;":::"memory"); } extern __device__ __cudart_builtin__ unsigned long long CUDARTAPI cudaCGGetIntrinsicHandle(enum cudaCGScope scope); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronize(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGSynchronizeGrid(unsigned long long handle, unsigned int flags); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetSize(unsigned int *numThreads, unsigned int *numGrids, unsigned long long handle); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaCGGetRank(unsigned int *threadRank, unsigned int *gridRank, unsigned long long handle); #ifdef __CUDA_ARCH__ #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetAttribute(int *value, enum cudaDeviceAttr attr, int device) { return __cudaCDP2DeviceGetAttribute(value, attr, device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetLimit(size_t *pValue, enum cudaLimit limit) { return __cudaCDP2DeviceGetLimit(pValue, limit); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetCacheConfig(enum cudaFuncCache *pCacheConfig) { return __cudaCDP2DeviceGetCacheConfig(pCacheConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetSharedMemConfig(enum cudaSharedMemConfig *pConfig) { return __cudaCDP2DeviceGetSharedMemConfig(pConfig); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetLastError(void) { return __cudaCDP2GetLastError(); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaPeekAtLastError(void) { return __cudaCDP2PeekAtLastError(); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorString(cudaError_t error) { return __cudaCDP2GetErrorString(error); } static __inline__ __device__ __cudart_builtin__ const char* CUDARTAPI cudaGetErrorName(cudaError_t error) { return __cudaCDP2GetErrorName(error); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDeviceCount(int *count) { return __cudaCDP2GetDeviceCount(count); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaGetDevice(int *device) { return __cudaCDP2GetDevice(device); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamCreateWithFlags(cudaStream_t *pStream, unsigned int flags) { return __cudaCDP2StreamCreateWithFlags(pStream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamDestroy(cudaStream_t stream) { return __cudaCDP2StreamDestroy(stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaStreamWaitEvent_ptsz(cudaStream_t stream, cudaEvent_t event, unsigned int flags) { return __cudaCDP2StreamWaitEvent_ptsz(stream, event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventCreateWithFlags(cudaEvent_t *event, unsigned int flags) { return __cudaCDP2EventCreateWithFlags(event, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecord_ptsz(cudaEvent_t event, cudaStream_t stream) { return __cudaCDP2EventRecord_ptsz(event, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventRecordWithFlags_ptsz(cudaEvent_t event, cudaStream_t stream, unsigned int flags) { return __cudaCDP2EventRecordWithFlags_ptsz(event, stream, flags); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaEventDestroy(cudaEvent_t event) { return __cudaCDP2EventDestroy(event); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func) { return __cudaCDP2FuncGetAttributes(attr, func); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFree(void *devPtr) { return __cudaCDP2Free(devPtr); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMalloc(void **devPtr, size_t size) { return __cudaCDP2Malloc(devPtr, size); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpyAsync_ptsz(void *dst, const void *src, size_t count, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2MemcpyAsync_ptsz(dst, src, count, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy2DAsync_ptsz(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, enum cudaMemcpyKind kind, cudaStream_t stream) { return __cudaCDP2Memcpy2DAsync_ptsz(dst, dpitch, src, spitch, width, height, kind, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemcpy3DAsync_ptsz(const struct cudaMemcpy3DParms *p, cudaStream_t stream) { return __cudaCDP2Memcpy3DAsync_ptsz(p, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemsetAsync_ptsz(void *devPtr, int value, size_t count, cudaStream_t stream) { return __cudaCDP2MemsetAsync_ptsz(devPtr, value, count, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset2DAsync_ptsz(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream) { return __cudaCDP2Memset2DAsync_ptsz(devPtr, pitch, value, width, height, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaMemset3DAsync_ptsz(struct cudaPitchedPtr pitchedDevPtr, int value, struct cudaExtent extent, cudaStream_t stream) { return __cudaCDP2Memset3DAsync_ptsz(pitchedDevPtr, value, extent, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaRuntimeGetVersion(int *runtimeVersion) { return __cudaCDP2RuntimeGetVersion(runtimeVersion); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, func, blockSize, dynamicSmemSize); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *func, int blockSize, size_t dynamicSmemSize, unsigned int flags) { return __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, func, blockSize, dynamicSmemSize, flags); } #endif #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size) { return __cudaCDP2GetParameterBuffer(alignment, size); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBuffer(size_t alignment, size_t size); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize) { return __cudaCDP2GetParameterBufferV2(func, gridDimension, blockDimension, sharedMemSize); } #else extern __device__ __cudart_builtin__ void * CUDARTAPI cudaGetParameterBufferV2(void *func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize); #endif #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice_ptsz(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2_ptsz(void *parameterBuffer, cudaStream_t stream); #endif #if defined(CUDA_API_PER_THREAD_DEFAULT_STREAM) && defined(__CUDA_ARCH__) static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #else return cudaLaunchDevice_ptsz(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); #endif } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { #ifdef __CUDA_INTERNAL_USE_CDP2 return __cudaCDP2LaunchDeviceV2_ptsz(parameterBuffer, stream); #else return cudaLaunchDeviceV2_ptsz(parameterBuffer, stream); #endif } #else #ifdef __CUDA_INTERNAL_USE_CDP2 static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream) { return __cudaCDP2LaunchDevice(func, parameterBuffer, gridDimension, blockDimension, sharedMemSize, stream); } static __inline__ __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream) { return __cudaCDP2LaunchDeviceV2(parameterBuffer, stream); } #else extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDevice(void *func, void *parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream); extern __device__ __cudart_builtin__ cudaError_t CUDARTAPI cudaLaunchDeviceV2(void *parameterBuffer, cudaStream_t stream); #endif #endif #define __cudaCDP2DeviceGetAttribute #define __cudaCDP2DeviceGetLimit #define __cudaCDP2DeviceGetCacheConfig #define __cudaCDP2DeviceGetSharedMemConfig #define __cudaCDP2GetLastError #define __cudaCDP2PeekAtLastError #define __cudaCDP2GetErrorString #define __cudaCDP2GetErrorName #define __cudaCDP2GetDeviceCount #define __cudaCDP2GetDevice #define __cudaCDP2StreamCreateWithFlags #define __cudaCDP2StreamDestroy #define __cudaCDP2StreamWaitEvent #define __cudaCDP2StreamWaitEvent_ptsz #define __cudaCDP2EventCreateWithFlags #define __cudaCDP2EventRecord #define __cudaCDP2EventRecord_ptsz #define __cudaCDP2EventRecordWithFlags #define __cudaCDP2EventRecordWithFlags_ptsz #define __cudaCDP2EventDestroy #define __cudaCDP2FuncGetAttributes #define __cudaCDP2Free #define __cudaCDP2Malloc #define __cudaCDP2MemcpyAsync #define __cudaCDP2MemcpyAsync_ptsz #define __cudaCDP2Memcpy2DAsync #define __cudaCDP2Memcpy2DAsync_ptsz #define __cudaCDP2Memcpy3DAsync #define __cudaCDP2Memcpy3DAsync_ptsz #define __cudaCDP2MemsetAsync #define __cudaCDP2MemsetAsync_ptsz #define __cudaCDP2Memset2DAsync #define __cudaCDP2Memset2DAsync_ptsz #define __cudaCDP2Memset3DAsync #define __cudaCDP2Memset3DAsync_ptsz #define __cudaCDP2RuntimeGetVersion #define __cudaCDP2GetParameterBuffer #define __cudaCDP2GetParameterBufferV2 #define __cudaCDP2LaunchDevice_ptsz #define __cudaCDP2LaunchDeviceV2_ptsz #define __cudaCDP2LaunchDevice #define __cudaCDP2LaunchDeviceV2 #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor #define __cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags } template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaMalloc(T **devPtr, size_t size); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaFuncGetAttributes(struct cudaFuncAttributes *attr, T *entry); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize); template <typename T> static __inline__ __device__ __cudart_builtin__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, T func, int blockSize, size_t dynamicSmemSize, unsigned int flags); #endif #endif #undef __DEPRECATED__ #undef __CDPRT_DEPRECATED #undef __CUDA_INTERNAL_USE_CDP2 #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/math_functions.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/math_functions.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_MATH_FUNCTIONS_H__ #endif #if !defined(__MATH_FUNCTIONS_H__) #define __MATH_FUNCTIONS_H__ #if defined(__QNX__) && (__GNUC__ >= 5) && defined(__CUDACC__) #if __has_include(<__config>) #include <__config> #endif #endif #if defined(__cplusplus) && defined(__CUDACC__) #if !defined(__DEVICE_TYPES_H__) #define __DEVICE_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif enum __device_builtin__ cudaRoundMode { cudaRoundNearest, cudaRoundZero, cudaRoundPosInf, cudaRoundMinInf }; #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DEVICE_TYPES_H__ #endif #endif #if !defined(__CUDACC_RTC__) #endif #if !defined(__SURFACE_TYPES_H__) #define __SURFACE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaSurfaceType1D 0x01 #define cudaSurfaceType2D 0x02 #define cudaSurfaceType3D 0x03 #define cudaSurfaceTypeCubemap 0x0C #define cudaSurfaceType1DLayered 0xF1 #define cudaSurfaceType2DLayered 0xF2 #define cudaSurfaceTypeCubemapLayered 0xFC enum __device_builtin__ cudaSurfaceBoundaryMode { cudaBoundaryModeZero = 0, cudaBoundaryModeClamp = 1, cudaBoundaryModeTrap = 2 }; enum __device_builtin__ cudaSurfaceFormatMode { cudaFormatModeForced = 0, cudaFormatModeAuto = 1 }; typedef __device_builtin__ unsigned long long cudaSurfaceObject_t; #endif #if !defined(__TEXTURE_TYPES_H__) #define __TEXTURE_TYPES_H__ #if !defined(__DRIVER_TYPES_H__) #define __DRIVER_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INTERNAL_COMPILATION__) #if !defined(__CUDACC_RTC__) #include <limits.h> #include <stddef.h> #endif #define cudaHostAllocDefault 0x00 #define cudaHostAllocPortable 0x01 #define cudaHostAllocMapped 0x02 #define cudaHostAllocWriteCombined 0x04 #define cudaHostRegisterDefault 0x00 #define cudaHostRegisterPortable 0x01 #define cudaHostRegisterMapped 0x02 #define cudaHostRegisterIoMemory 0x04 #define cudaHostRegisterReadOnly 0x08 #define cudaPeerAccessDefault 0x00 #define cudaStreamDefault 0x00 #define cudaStreamNonBlocking 0x01 #define cudaStreamLegacy ((cudaStream_t)0x1) #define cudaStreamPerThread ((cudaStream_t)0x2) #define cudaEventDefault 0x00 #define cudaEventBlockingSync 0x01 #define cudaEventDisableTiming 0x02 #define cudaEventInterprocess 0x04 #define cudaEventRecordDefault 0x00 #define cudaEventRecordExternal 0x01 #define cudaEventWaitDefault 0x00 #define cudaEventWaitExternal 0x01 #define cudaDeviceScheduleAuto 0x00 #define cudaDeviceScheduleSpin 0x01 #define cudaDeviceScheduleYield 0x02 #define cudaDeviceScheduleBlockingSync 0x04 #define cudaDeviceBlockingSync 0x04 #define cudaDeviceScheduleMask 0x07 #define cudaDeviceMapHost 0x08 #define cudaDeviceLmemResizeToMax 0x10 #define cudaDeviceSyncMemops 0x80 #define cudaDeviceMask 0xff #define cudaArrayDefault 0x00 #define cudaArrayLayered 0x01 #define cudaArraySurfaceLoadStore 0x02 #define cudaArrayCubemap 0x04 #define cudaArrayTextureGather 0x08 #define cudaArrayColorAttachment 0x20 #define cudaArraySparse 0x40 #define cudaArrayDeferredMapping 0x80 #define cudaIpcMemLazyEnablePeerAccess 0x01 #define cudaMemAttachGlobal 0x01 #define cudaMemAttachHost 0x02 #define cudaMemAttachSingle 0x04 #define cudaOccupancyDefault 0x00 #define cudaOccupancyDisableCachingOverride 0x01 #define cudaCpuDeviceId ((int)-1) #define cudaInvalidDeviceId ((int)-2) #define cudaInitDeviceFlagsAreValid 0x01 #define cudaCooperativeLaunchMultiDeviceNoPreSync 0x01 #define cudaCooperativeLaunchMultiDeviceNoPostSync 0x02 #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif enum __device_builtin__ cudaError { cudaSuccess = 0, cudaErrorInvalidValue = 1, cudaErrorMemoryAllocation = 2, cudaErrorInitializationError = 3, cudaErrorCudartUnloading = 4, cudaErrorProfilerDisabled = 5, cudaErrorProfilerNotInitialized = 6, cudaErrorProfilerAlreadyStarted = 7, cudaErrorProfilerAlreadyStopped = 8, cudaErrorInvalidConfiguration = 9, cudaErrorInvalidPitchValue = 12, cudaErrorInvalidSymbol = 13, cudaErrorInvalidHostPointer = 16, cudaErrorInvalidDevicePointer = 17, cudaErrorInvalidTexture = 18, cudaErrorInvalidTextureBinding = 19, cudaErrorInvalidChannelDescriptor = 20, cudaErrorInvalidMemcpyDirection = 21, cudaErrorAddressOfConstant = 22, cudaErrorTextureFetchFailed = 23, cudaErrorTextureNotBound = 24, cudaErrorSynchronizationError = 25, cudaErrorInvalidFilterSetting = 26, cudaErrorInvalidNormSetting = 27, cudaErrorMixedDeviceExecution = 28, cudaErrorNotYetImplemented = 31, cudaErrorMemoryValueTooLarge = 32, cudaErrorStubLibrary = 34, cudaErrorInsufficientDriver = 35, cudaErrorCallRequiresNewerDriver = 36, cudaErrorInvalidSurface = 37, cudaErrorDuplicateVariableName = 43, cudaErrorDuplicateTextureName = 44, cudaErrorDuplicateSurfaceName = 45, cudaErrorDevicesUnavailable = 46, cudaErrorIncompatibleDriverContext = 49, cudaErrorMissingConfiguration = 52, cudaErrorPriorLaunchFailure = 53, cudaErrorLaunchMaxDepthExceeded = 65, cudaErrorLaunchFileScopedTex = 66, cudaErrorLaunchFileScopedSurf = 67, cudaErrorSyncDepthExceeded = 68, cudaErrorLaunchPendingCountExceeded = 69, cudaErrorInvalidDeviceFunction = 98, cudaErrorNoDevice = 100, cudaErrorInvalidDevice = 101, cudaErrorDeviceNotLicensed = 102, cudaErrorSoftwareValidityNotEstablished = 103, cudaErrorStartupFailure = 127, cudaErrorInvalidKernelImage = 200, cudaErrorDeviceUninitialized = 201, cudaErrorMapBufferObjectFailed = 205, cudaErrorUnmapBufferObjectFailed = 206, cudaErrorArrayIsMapped = 207, cudaErrorAlreadyMapped = 208, cudaErrorNoKernelImageForDevice = 209, cudaErrorAlreadyAcquired = 210, cudaErrorNotMapped = 211, cudaErrorNotMappedAsArray = 212, cudaErrorNotMappedAsPointer = 213, cudaErrorECCUncorrectable = 214, cudaErrorUnsupportedLimit = 215, cudaErrorDeviceAlreadyInUse = 216, cudaErrorPeerAccessUnsupported = 217, cudaErrorInvalidPtx = 218, cudaErrorInvalidGraphicsContext = 219, cudaErrorNvlinkUncorrectable = 220, cudaErrorJitCompilerNotFound = 221, cudaErrorUnsupportedPtxVersion = 222, cudaErrorJitCompilationDisabled = 223, cudaErrorUnsupportedExecAffinity = 224, cudaErrorUnsupportedDevSideSync = 225, cudaErrorInvalidSource = 300, cudaErrorFileNotFound = 301, cudaErrorSharedObjectSymbolNotFound = 302, cudaErrorSharedObjectInitFailed = 303, cudaErrorOperatingSystem = 304, cudaErrorInvalidResourceHandle = 400, cudaErrorIllegalState = 401, cudaErrorSymbolNotFound = 500, cudaErrorNotReady = 600, cudaErrorIllegalAddress = 700, cudaErrorLaunchOutOfResources = 701, cudaErrorLaunchTimeout = 702, cudaErrorLaunchIncompatibleTexturing = 703, cudaErrorPeerAccessAlreadyEnabled = 704, cudaErrorPeerAccessNotEnabled = 705, cudaErrorSetOnActiveProcess = 708, cudaErrorContextIsDestroyed = 709, cudaErrorAssert = 710, cudaErrorTooManyPeers = 711, cudaErrorHostMemoryAlreadyRegistered = 712, cudaErrorHostMemoryNotRegistered = 713, cudaErrorHardwareStackError = 714, cudaErrorIllegalInstruction = 715, cudaErrorMisalignedAddress = 716, cudaErrorInvalidAddressSpace = 717, cudaErrorInvalidPc = 718, cudaErrorLaunchFailure = 719, cudaErrorCooperativeLaunchTooLarge = 720, cudaErrorNotPermitted = 800, cudaErrorNotSupported = 801, cudaErrorSystemNotReady = 802, cudaErrorSystemDriverMismatch = 803, cudaErrorCompatNotSupportedOnDevice = 804, cudaErrorMpsConnectionFailed = 805, cudaErrorMpsRpcFailure = 806, cudaErrorMpsServerNotReady = 807, cudaErrorMpsMaxClientsReached = 808, cudaErrorMpsMaxConnectionsReached = 809, cudaErrorMpsClientTerminated = 810, cudaErrorCdpNotSupported = 811, cudaErrorCdpVersionMismatch = 812, cudaErrorStreamCaptureUnsupported = 900, cudaErrorStreamCaptureInvalidated = 901, cudaErrorStreamCaptureMerge = 902, cudaErrorStreamCaptureUnmatched = 903, cudaErrorStreamCaptureUnjoined = 904, cudaErrorStreamCaptureIsolation = 905, cudaErrorStreamCaptureImplicit = 906, cudaErrorCapturedEvent = 907, cudaErrorStreamCaptureWrongThread = 908, cudaErrorTimeout = 909, cudaErrorGraphExecUpdateFailure = 910, cudaErrorExternalDevice = 911, cudaErrorInvalidClusterSize = 912, cudaErrorUnknown = 999, cudaErrorApiFailureBase = 10000 }; enum __device_builtin__ cudaChannelFormatKind { cudaChannelFormatKindSigned = 0, cudaChannelFormatKindUnsigned = 1, cudaChannelFormatKindFloat = 2, cudaChannelFormatKindNone = 3, cudaChannelFormatKindNV12 = 4, cudaChannelFormatKindUnsignedNormalized8X1 = 5, cudaChannelFormatKindUnsignedNormalized8X2 = 6, cudaChannelFormatKindUnsignedNormalized8X4 = 7, cudaChannelFormatKindUnsignedNormalized16X1 = 8, cudaChannelFormatKindUnsignedNormalized16X2 = 9, cudaChannelFormatKindUnsignedNormalized16X4 = 10, cudaChannelFormatKindSignedNormalized8X1 = 11, cudaChannelFormatKindSignedNormalized8X2 = 12, cudaChannelFormatKindSignedNormalized8X4 = 13, cudaChannelFormatKindSignedNormalized16X1 = 14, cudaChannelFormatKindSignedNormalized16X2 = 15, cudaChannelFormatKindSignedNormalized16X4 = 16, cudaChannelFormatKindUnsignedBlockCompressed1 = 17, cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18, cudaChannelFormatKindUnsignedBlockCompressed2 = 19, cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20, cudaChannelFormatKindUnsignedBlockCompressed3 = 21, cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22, cudaChannelFormatKindUnsignedBlockCompressed4 = 23, cudaChannelFormatKindSignedBlockCompressed4 = 24, cudaChannelFormatKindUnsignedBlockCompressed5 = 25, cudaChannelFormatKindSignedBlockCompressed5 = 26, cudaChannelFormatKindUnsignedBlockCompressed6H = 27, cudaChannelFormatKindSignedBlockCompressed6H = 28, cudaChannelFormatKindUnsignedBlockCompressed7 = 29, cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30 }; struct __device_builtin__ cudaChannelFormatDesc { int x; int y; int z; int w; enum cudaChannelFormatKind f; }; typedef struct cudaArray *cudaArray_t; typedef const struct cudaArray *cudaArray_const_t; struct cudaArray; typedef struct cudaMipmappedArray *cudaMipmappedArray_t; typedef const struct cudaMipmappedArray *cudaMipmappedArray_const_t; struct cudaMipmappedArray; #define cudaArraySparsePropertiesSingleMipTail 0x1 struct __device_builtin__ cudaArraySparseProperties { struct { unsigned int width; unsigned int height; unsigned int depth; } tileExtent; unsigned int miptailFirstLevel; unsigned long long miptailSize; unsigned int flags; unsigned int reserved[4]; }; struct __device_builtin__ cudaArrayMemoryRequirements { size_t size; size_t alignment; unsigned int reserved[4]; }; enum __device_builtin__ cudaMemoryType { cudaMemoryTypeUnregistered = 0, cudaMemoryTypeHost = 1, cudaMemoryTypeDevice = 2, cudaMemoryTypeManaged = 3 }; enum __device_builtin__ cudaMemcpyKind { cudaMemcpyHostToHost = 0, cudaMemcpyHostToDevice = 1, cudaMemcpyDeviceToHost = 2, cudaMemcpyDeviceToDevice = 3, cudaMemcpyDefault = 4 }; struct __device_builtin__ cudaPitchedPtr { void *ptr; size_t pitch; size_t xsize; size_t ysize; }; struct __device_builtin__ cudaExtent { size_t width; size_t height; size_t depth; }; struct __device_builtin__ cudaPos { size_t x; size_t y; size_t z; }; struct __device_builtin__ cudaMemcpy3DParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; struct cudaExtent extent; enum cudaMemcpyKind kind; }; struct __device_builtin__ cudaMemcpy3DPeerParms { cudaArray_t srcArray; struct cudaPos srcPos; struct cudaPitchedPtr srcPtr; int srcDevice; cudaArray_t dstArray; struct cudaPos dstPos; struct cudaPitchedPtr dstPtr; int dstDevice; struct cudaExtent extent; }; struct __device_builtin__ cudaMemsetParams { void *dst; size_t pitch; unsigned int value; unsigned int elementSize; size_t width; size_t height; }; enum __device_builtin__ cudaAccessProperty { cudaAccessPropertyNormal = 0, cudaAccessPropertyStreaming = 1, cudaAccessPropertyPersisting = 2 }; struct __device_builtin__ cudaAccessPolicyWindow { void *base_ptr; size_t num_bytes; float hitRatio; enum cudaAccessProperty hitProp; enum cudaAccessProperty missProp; }; #ifdef _WIN32 #define CUDART_CB __stdcall #else #define CUDART_CB #endif typedef void (CUDART_CB *cudaHostFn_t)(void *userData); struct __device_builtin__ cudaHostNodeParams { cudaHostFn_t fn; void* userData; }; enum __device_builtin__ cudaStreamCaptureStatus { cudaStreamCaptureStatusNone = 0, cudaStreamCaptureStatusActive = 1, cudaStreamCaptureStatusInvalidated = 2 }; enum __device_builtin__ cudaStreamCaptureMode { cudaStreamCaptureModeGlobal = 0, cudaStreamCaptureModeThreadLocal = 1, cudaStreamCaptureModeRelaxed = 2 }; enum __device_builtin__ cudaSynchronizationPolicy { cudaSyncPolicyAuto = 1, cudaSyncPolicySpin = 2, cudaSyncPolicyYield = 3, cudaSyncPolicyBlockingSync = 4 }; enum __device_builtin__ cudaClusterSchedulingPolicy { cudaClusterSchedulingPolicyDefault = 0, cudaClusterSchedulingPolicySpread = 1, cudaClusterSchedulingPolicyLoadBalancing = 2 }; enum __device_builtin__ cudaStreamUpdateCaptureDependenciesFlags { cudaStreamAddCaptureDependencies = 0x0, cudaStreamSetCaptureDependencies = 0x1 }; enum __device_builtin__ cudaUserObjectFlags { cudaUserObjectNoDestructorSync = 0x1 }; enum __device_builtin__ cudaUserObjectRetainFlags { cudaGraphUserObjectMove = 0x1 }; struct cudaGraphicsResource; enum __device_builtin__ cudaGraphicsRegisterFlags { cudaGraphicsRegisterFlagsNone = 0, cudaGraphicsRegisterFlagsReadOnly = 1, cudaGraphicsRegisterFlagsWriteDiscard = 2, cudaGraphicsRegisterFlagsSurfaceLoadStore = 4, cudaGraphicsRegisterFlagsTextureGather = 8 }; enum __device_builtin__ cudaGraphicsMapFlags { cudaGraphicsMapFlagsNone = 0, cudaGraphicsMapFlagsReadOnly = 1, cudaGraphicsMapFlagsWriteDiscard = 2 }; enum __device_builtin__ cudaGraphicsCubeFace { cudaGraphicsCubeFacePositiveX = 0x00, cudaGraphicsCubeFaceNegativeX = 0x01, cudaGraphicsCubeFacePositiveY = 0x02, cudaGraphicsCubeFaceNegativeY = 0x03, cudaGraphicsCubeFacePositiveZ = 0x04, cudaGraphicsCubeFaceNegativeZ = 0x05 }; enum __device_builtin__ cudaResourceType { cudaResourceTypeArray = 0x00, cudaResourceTypeMipmappedArray = 0x01, cudaResourceTypeLinear = 0x02, cudaResourceTypePitch2D = 0x03 }; enum __device_builtin__ cudaResourceViewFormat { cudaResViewFormatNone = 0x00, cudaResViewFormatUnsignedChar1 = 0x01, cudaResViewFormatUnsignedChar2 = 0x02, cudaResViewFormatUnsignedChar4 = 0x03, cudaResViewFormatSignedChar1 = 0x04, cudaResViewFormatSignedChar2 = 0x05, cudaResViewFormatSignedChar4 = 0x06, cudaResViewFormatUnsignedShort1 = 0x07, cudaResViewFormatUnsignedShort2 = 0x08, cudaResViewFormatUnsignedShort4 = 0x09, cudaResViewFormatSignedShort1 = 0x0a, cudaResViewFormatSignedShort2 = 0x0b, cudaResViewFormatSignedShort4 = 0x0c, cudaResViewFormatUnsignedInt1 = 0x0d, cudaResViewFormatUnsignedInt2 = 0x0e, cudaResViewFormatUnsignedInt4 = 0x0f, cudaResViewFormatSignedInt1 = 0x10, cudaResViewFormatSignedInt2 = 0x11, cudaResViewFormatSignedInt4 = 0x12, cudaResViewFormatHalf1 = 0x13, cudaResViewFormatHalf2 = 0x14, cudaResViewFormatHalf4 = 0x15, cudaResViewFormatFloat1 = 0x16, cudaResViewFormatFloat2 = 0x17, cudaResViewFormatFloat4 = 0x18, cudaResViewFormatUnsignedBlockCompressed1 = 0x19, cudaResViewFormatUnsignedBlockCompressed2 = 0x1a, cudaResViewFormatUnsignedBlockCompressed3 = 0x1b, cudaResViewFormatUnsignedBlockCompressed4 = 0x1c, cudaResViewFormatSignedBlockCompressed4 = 0x1d, cudaResViewFormatUnsignedBlockCompressed5 = 0x1e, cudaResViewFormatSignedBlockCompressed5 = 0x1f, cudaResViewFormatUnsignedBlockCompressed6H = 0x20, cudaResViewFormatSignedBlockCompressed6H = 0x21, cudaResViewFormatUnsignedBlockCompressed7 = 0x22 }; struct __device_builtin__ cudaResourceDesc { enum cudaResourceType resType; union { struct { cudaArray_t array; } array; struct { cudaMipmappedArray_t mipmap; } mipmap; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t sizeInBytes; } linear; struct { void *devPtr; struct cudaChannelFormatDesc desc; size_t width; size_t height; size_t pitchInBytes; } pitch2D; } res; }; struct __device_builtin__ cudaResourceViewDesc { enum cudaResourceViewFormat format; size_t width; size_t height; size_t depth; unsigned int firstMipmapLevel; unsigned int lastMipmapLevel; unsigned int firstLayer; unsigned int lastLayer; }; struct __device_builtin__ cudaPointerAttributes { enum cudaMemoryType type; int device; void *devicePointer; void *hostPointer; }; struct __device_builtin__ cudaFuncAttributes { size_t sharedSizeBytes; size_t constSizeBytes; size_t localSizeBytes; int maxThreadsPerBlock; int numRegs; int ptxVersion; int binaryVersion; int cacheModeCA; int maxDynamicSharedSizeBytes; int preferredShmemCarveout; int clusterDimMustBeSet; int requiredClusterWidth; int requiredClusterHeight; int requiredClusterDepth; int clusterSchedulingPolicyPreference; int nonPortableClusterSizeAllowed; int reserved[16]; }; enum __device_builtin__ cudaFuncAttribute { cudaFuncAttributeMaxDynamicSharedMemorySize = 8, cudaFuncAttributePreferredSharedMemoryCarveout = 9, cudaFuncAttributeClusterDimMustBeSet = 10, cudaFuncAttributeRequiredClusterWidth = 11, cudaFuncAttributeRequiredClusterHeight = 12, cudaFuncAttributeRequiredClusterDepth = 13, cudaFuncAttributeNonPortableClusterSizeAllowed = 14, cudaFuncAttributeClusterSchedulingPolicyPreference = 15, cudaFuncAttributeMax }; enum __device_builtin__ cudaFuncCache { cudaFuncCachePreferNone = 0, cudaFuncCachePreferShared = 1, cudaFuncCachePreferL1 = 2, cudaFuncCachePreferEqual = 3 }; enum __device_builtin__ cudaSharedMemConfig { cudaSharedMemBankSizeDefault = 0, cudaSharedMemBankSizeFourByte = 1, cudaSharedMemBankSizeEightByte = 2 }; enum __device_builtin__ cudaSharedCarveout { cudaSharedmemCarveoutDefault = -1, cudaSharedmemCarveoutMaxShared = 100, cudaSharedmemCarveoutMaxL1 = 0 }; enum __device_builtin__ cudaComputeMode { cudaComputeModeDefault = 0, cudaComputeModeExclusive = 1, cudaComputeModeProhibited = 2, cudaComputeModeExclusiveProcess = 3 }; enum __device_builtin__ cudaLimit { cudaLimitStackSize = 0x00, cudaLimitPrintfFifoSize = 0x01, cudaLimitMallocHeapSize = 0x02, cudaLimitDevRuntimeSyncDepth = 0x03, cudaLimitDevRuntimePendingLaunchCount = 0x04, cudaLimitMaxL2FetchGranularity = 0x05, cudaLimitPersistingL2CacheSize = 0x06 }; enum __device_builtin__ cudaMemoryAdvise { cudaMemAdviseSetReadMostly = 1, cudaMemAdviseUnsetReadMostly = 2, cudaMemAdviseSetPreferredLocation = 3, cudaMemAdviseUnsetPreferredLocation = 4, cudaMemAdviseSetAccessedBy = 5, cudaMemAdviseUnsetAccessedBy = 6 }; enum __device_builtin__ cudaMemRangeAttribute { cudaMemRangeAttributeReadMostly = 1, cudaMemRangeAttributePreferredLocation = 2, cudaMemRangeAttributeAccessedBy = 3, cudaMemRangeAttributeLastPrefetchLocation = 4 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesOptions { cudaFlushGPUDirectRDMAWritesOptionHost = 1<<0, cudaFlushGPUDirectRDMAWritesOptionMemOps = 1<<1 }; enum __device_builtin__ cudaGPUDirectRDMAWritesOrdering { cudaGPUDirectRDMAWritesOrderingNone = 0, cudaGPUDirectRDMAWritesOrderingOwner = 100, cudaGPUDirectRDMAWritesOrderingAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesScope { cudaFlushGPUDirectRDMAWritesToOwner = 100, cudaFlushGPUDirectRDMAWritesToAllDevices = 200 }; enum __device_builtin__ cudaFlushGPUDirectRDMAWritesTarget { cudaFlushGPUDirectRDMAWritesTargetCurrentDevice }; enum __device_builtin__ cudaDeviceAttr { cudaDevAttrMaxThreadsPerBlock = 1, cudaDevAttrMaxBlockDimX = 2, cudaDevAttrMaxBlockDimY = 3, cudaDevAttrMaxBlockDimZ = 4, cudaDevAttrMaxGridDimX = 5, cudaDevAttrMaxGridDimY = 6, cudaDevAttrMaxGridDimZ = 7, cudaDevAttrMaxSharedMemoryPerBlock = 8, cudaDevAttrTotalConstantMemory = 9, cudaDevAttrWarpSize = 10, cudaDevAttrMaxPitch = 11, cudaDevAttrMaxRegistersPerBlock = 12, cudaDevAttrClockRate = 13, cudaDevAttrTextureAlignment = 14, cudaDevAttrGpuOverlap = 15, cudaDevAttrMultiProcessorCount = 16, cudaDevAttrKernelExecTimeout = 17, cudaDevAttrIntegrated = 18, cudaDevAttrCanMapHostMemory = 19, cudaDevAttrComputeMode = 20, cudaDevAttrMaxTexture1DWidth = 21, cudaDevAttrMaxTexture2DWidth = 22, cudaDevAttrMaxTexture2DHeight = 23, cudaDevAttrMaxTexture3DWidth = 24, cudaDevAttrMaxTexture3DHeight = 25, cudaDevAttrMaxTexture3DDepth = 26, cudaDevAttrMaxTexture2DLayeredWidth = 27, cudaDevAttrMaxTexture2DLayeredHeight = 28, cudaDevAttrMaxTexture2DLayeredLayers = 29, cudaDevAttrSurfaceAlignment = 30, cudaDevAttrConcurrentKernels = 31, cudaDevAttrEccEnabled = 32, cudaDevAttrPciBusId = 33, cudaDevAttrPciDeviceId = 34, cudaDevAttrTccDriver = 35, cudaDevAttrMemoryClockRate = 36, cudaDevAttrGlobalMemoryBusWidth = 37, cudaDevAttrL2CacheSize = 38, cudaDevAttrMaxThreadsPerMultiProcessor = 39, cudaDevAttrAsyncEngineCount = 40, cudaDevAttrUnifiedAddressing = 41, cudaDevAttrMaxTexture1DLayeredWidth = 42, cudaDevAttrMaxTexture1DLayeredLayers = 43, cudaDevAttrMaxTexture2DGatherWidth = 45, cudaDevAttrMaxTexture2DGatherHeight = 46, cudaDevAttrMaxTexture3DWidthAlt = 47, cudaDevAttrMaxTexture3DHeightAlt = 48, cudaDevAttrMaxTexture3DDepthAlt = 49, cudaDevAttrPciDomainId = 50, cudaDevAttrTexturePitchAlignment = 51, cudaDevAttrMaxTextureCubemapWidth = 52, cudaDevAttrMaxTextureCubemapLayeredWidth = 53, cudaDevAttrMaxTextureCubemapLayeredLayers = 54, cudaDevAttrMaxSurface1DWidth = 55, cudaDevAttrMaxSurface2DWidth = 56, cudaDevAttrMaxSurface2DHeight = 57, cudaDevAttrMaxSurface3DWidth = 58, cudaDevAttrMaxSurface3DHeight = 59, cudaDevAttrMaxSurface3DDepth = 60, cudaDevAttrMaxSurface1DLayeredWidth = 61, cudaDevAttrMaxSurface1DLayeredLayers = 62, cudaDevAttrMaxSurface2DLayeredWidth = 63, cudaDevAttrMaxSurface2DLayeredHeight = 64, cudaDevAttrMaxSurface2DLayeredLayers = 65, cudaDevAttrMaxSurfaceCubemapWidth = 66, cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67, cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68, cudaDevAttrMaxTexture1DLinearWidth = 69, cudaDevAttrMaxTexture2DLinearWidth = 70, cudaDevAttrMaxTexture2DLinearHeight = 71, cudaDevAttrMaxTexture2DLinearPitch = 72, cudaDevAttrMaxTexture2DMipmappedWidth = 73, cudaDevAttrMaxTexture2DMipmappedHeight = 74, cudaDevAttrComputeCapabilityMajor = 75, cudaDevAttrComputeCapabilityMinor = 76, cudaDevAttrMaxTexture1DMipmappedWidth = 77, cudaDevAttrStreamPrioritiesSupported = 78, cudaDevAttrGlobalL1CacheSupported = 79, cudaDevAttrLocalL1CacheSupported = 80, cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81, cudaDevAttrMaxRegistersPerMultiprocessor = 82, cudaDevAttrManagedMemory = 83, cudaDevAttrIsMultiGpuBoard = 84, cudaDevAttrMultiGpuBoardGroupID = 85, cudaDevAttrHostNativeAtomicSupported = 86, cudaDevAttrSingleToDoublePrecisionPerfRatio = 87, cudaDevAttrPageableMemoryAccess = 88, cudaDevAttrConcurrentManagedAccess = 89, cudaDevAttrComputePreemptionSupported = 90, cudaDevAttrCanUseHostPointerForRegisteredMem = 91, cudaDevAttrReserved92 = 92, cudaDevAttrReserved93 = 93, cudaDevAttrReserved94 = 94, cudaDevAttrCooperativeLaunch = 95, cudaDevAttrCooperativeMultiDeviceLaunch = 96, cudaDevAttrMaxSharedMemoryPerBlockOptin = 97, cudaDevAttrCanFlushRemoteWrites = 98, cudaDevAttrHostRegisterSupported = 99, cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100, cudaDevAttrDirectManagedMemAccessFromHost = 101, cudaDevAttrMaxBlocksPerMultiprocessor = 106, cudaDevAttrMaxPersistingL2CacheSize = 108, cudaDevAttrMaxAccessPolicyWindowSize = 109, cudaDevAttrReservedSharedMemoryPerBlock = 111, cudaDevAttrSparseCudaArraySupported = 112, cudaDevAttrHostRegisterReadOnlySupported = 113, cudaDevAttrTimelineSemaphoreInteropSupported = 114, cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114, cudaDevAttrMemoryPoolsSupported = 115, cudaDevAttrGPUDirectRDMASupported = 116, cudaDevAttrGPUDirectRDMAWritesOrdering = 118, cudaDevAttrMemoryPoolSupportedHandleTypes = 119, cudaDevAttrClusterLaunch = 120, cudaDevAttrDeferredMappingCudaArraySupported = 121, cudaDevAttrReserved122 = 122, cudaDevAttrReserved123 = 123, cudaDevAttrReserved124 = 124, cudaDevAttrIpcEventSupport = 125, cudaDevAttrMemSyncDomainCount = 126, cudaDevAttrReserved127 = 127, cudaDevAttrReserved128 = 128, cudaDevAttrReserved129 = 129, cudaDevAttrReserved132 = 132, cudaDevAttrMax }; enum __device_builtin__ cudaMemPoolAttr { cudaMemPoolReuseFollowEventDependencies = 0x1, cudaMemPoolReuseAllowOpportunistic = 0x2, cudaMemPoolReuseAllowInternalDependencies = 0x3, cudaMemPoolAttrReleaseThreshold = 0x4, cudaMemPoolAttrReservedMemCurrent = 0x5, cudaMemPoolAttrReservedMemHigh = 0x6, cudaMemPoolAttrUsedMemCurrent = 0x7, cudaMemPoolAttrUsedMemHigh = 0x8 }; enum __device_builtin__ cudaMemLocationType { cudaMemLocationTypeInvalid = 0, cudaMemLocationTypeDevice = 1 }; struct __device_builtin__ cudaMemLocation { enum cudaMemLocationType type; int id; }; enum __device_builtin__ cudaMemAccessFlags { cudaMemAccessFlagsProtNone = 0, cudaMemAccessFlagsProtRead = 1, cudaMemAccessFlagsProtReadWrite = 3 }; struct __device_builtin__ cudaMemAccessDesc { struct cudaMemLocation location; enum cudaMemAccessFlags flags; }; enum __device_builtin__ cudaMemAllocationType { cudaMemAllocationTypeInvalid = 0x0, cudaMemAllocationTypePinned = 0x1, cudaMemAllocationTypeMax = 0x7FFFFFFF }; enum __device_builtin__ cudaMemAllocationHandleType { cudaMemHandleTypeNone = 0x0, cudaMemHandleTypePosixFileDescriptor = 0x1, cudaMemHandleTypeWin32 = 0x2, cudaMemHandleTypeWin32Kmt = 0x4 }; struct __device_builtin__ cudaMemPoolProps { enum cudaMemAllocationType allocType; enum cudaMemAllocationHandleType handleTypes; struct cudaMemLocation location; void *win32SecurityAttributes; unsigned char reserved[64]; }; struct __device_builtin__ cudaMemPoolPtrExportData { unsigned char reserved[64]; }; struct __device_builtin__ cudaMemAllocNodeParams { struct cudaMemPoolProps poolProps; const struct cudaMemAccessDesc *accessDescs; size_t accessDescCount; size_t bytesize; void *dptr; }; enum __device_builtin__ cudaGraphMemAttributeType { cudaGraphMemAttrUsedMemCurrent = 0x0, cudaGraphMemAttrUsedMemHigh = 0x1, cudaGraphMemAttrReservedMemCurrent = 0x2, cudaGraphMemAttrReservedMemHigh = 0x3 }; enum __device_builtin__ cudaDeviceP2PAttr { cudaDevP2PAttrPerformanceRank = 1, cudaDevP2PAttrAccessSupported = 2, cudaDevP2PAttrNativeAtomicSupported = 3, cudaDevP2PAttrCudaArrayAccessSupported = 4 }; #ifndef CU_UUID_HAS_BEEN_DEFINED #define CU_UUID_HAS_BEEN_DEFINED struct __device_builtin__ CUuuid_st { char bytes[16]; }; typedef __device_builtin__ struct CUuuid_st CUuuid; #endif typedef __device_builtin__ struct CUuuid_st cudaUUID_t; struct __device_builtin__ cudaDeviceProp { char name[256]; cudaUUID_t uuid; char luid[8]; unsigned int luidDeviceNodeMask; size_t totalGlobalMem; size_t sharedMemPerBlock; int regsPerBlock; int warpSize; size_t memPitch; int maxThreadsPerBlock; int maxThreadsDim[3]; int maxGridSize[3]; int clockRate; size_t totalConstMem; int major; int minor; size_t textureAlignment; size_t texturePitchAlignment; int deviceOverlap; int multiProcessorCount; int kernelExecTimeoutEnabled; int integrated; int canMapHostMemory; int computeMode; int maxTexture1D; int maxTexture1DMipmap; int maxTexture1DLinear; int maxTexture2D[2]; int maxTexture2DMipmap[2]; int maxTexture2DLinear[3]; int maxTexture2DGather[2]; int maxTexture3D[3]; int maxTexture3DAlt[3]; int maxTextureCubemap; int maxTexture1DLayered[2]; int maxTexture2DLayered[3]; int maxTextureCubemapLayered[2]; int maxSurface1D; int maxSurface2D[2]; int maxSurface3D[3]; int maxSurface1DLayered[2]; int maxSurface2DLayered[3]; int maxSurfaceCubemap; int maxSurfaceCubemapLayered[2]; size_t surfaceAlignment; int concurrentKernels; int ECCEnabled; int pciBusID; int pciDeviceID; int pciDomainID; int tccDriver; int asyncEngineCount; int unifiedAddressing; int memoryClockRate; int memoryBusWidth; int l2CacheSize; int persistingL2CacheMaxSize; int maxThreadsPerMultiProcessor; int streamPrioritiesSupported; int globalL1CacheSupported; int localL1CacheSupported; size_t sharedMemPerMultiprocessor; int regsPerMultiprocessor; int managedMemory; int isMultiGpuBoard; int multiGpuBoardGroupID; int hostNativeAtomicSupported; int singleToDoublePrecisionPerfRatio; int pageableMemoryAccess; int concurrentManagedAccess; int computePreemptionSupported; int canUseHostPointerForRegisteredMem; int cooperativeLaunch; int cooperativeMultiDeviceLaunch; size_t sharedMemPerBlockOptin; int pageableMemoryAccessUsesHostPageTables; int directManagedMemAccessFromHost; int maxBlocksPerMultiProcessor; int accessPolicyMaxWindowSize; size_t reservedSharedMemPerBlock; int hostRegisterSupported; int sparseCudaArraySupported; int hostRegisterReadOnlySupported; int timelineSemaphoreInteropSupported; int memoryPoolsSupported; int gpuDirectRDMASupported; unsigned int gpuDirectRDMAFlushWritesOptions; int gpuDirectRDMAWritesOrdering; unsigned int memoryPoolSupportedHandleTypes; int deferredMappingCudaArraySupported; int ipcEventSupported; int clusterLaunch; int unifiedFunctionPointers; int reserved2[2]; int reserved[61]; }; #define CUDA_IPC_HANDLE_SIZE 64 typedef __device_builtin__ struct __device_builtin__ cudaIpcEventHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcEventHandle_t; typedef __device_builtin__ struct __device_builtin__ cudaIpcMemHandle_st { char reserved[CUDA_IPC_HANDLE_SIZE]; }cudaIpcMemHandle_t; enum __device_builtin__ cudaExternalMemoryHandleType { cudaExternalMemoryHandleTypeOpaqueFd = 1, cudaExternalMemoryHandleTypeOpaqueWin32 = 2, cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3, cudaExternalMemoryHandleTypeD3D12Heap = 4, cudaExternalMemoryHandleTypeD3D12Resource = 5, cudaExternalMemoryHandleTypeD3D11Resource = 6, cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7, cudaExternalMemoryHandleTypeNvSciBuf = 8 }; #define cudaExternalMemoryDedicated 0x1 #define cudaExternalSemaphoreSignalSkipNvSciBufMemSync 0x01 #define cudaExternalSemaphoreWaitSkipNvSciBufMemSync 0x02 #define cudaNvSciSyncAttrSignal 0x1 #define cudaNvSciSyncAttrWait 0x2 struct __device_builtin__ cudaExternalMemoryHandleDesc { enum cudaExternalMemoryHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void *nvSciBufObject; } handle; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryBufferDesc { unsigned long long offset; unsigned long long size; unsigned int flags; }; struct __device_builtin__ cudaExternalMemoryMipmappedArrayDesc { unsigned long long offset; struct cudaChannelFormatDesc formatDesc; struct cudaExtent extent; unsigned int flags; unsigned int numLevels; }; enum __device_builtin__ cudaExternalSemaphoreHandleType { cudaExternalSemaphoreHandleTypeOpaqueFd = 1, cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2, cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3, cudaExternalSemaphoreHandleTypeD3D12Fence = 4, cudaExternalSemaphoreHandleTypeD3D11Fence = 5, cudaExternalSemaphoreHandleTypeNvSciSync = 6, cudaExternalSemaphoreHandleTypeKeyedMutex = 7, cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8, cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9, cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10 }; struct __device_builtin__ cudaExternalSemaphoreHandleDesc { enum cudaExternalSemaphoreHandleType type; union { int fd; struct { void *handle; const void *name; } win32; const void* nvSciSyncObj; } handle; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams_v1 { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; } params; unsigned int flags; }; struct __device_builtin__ cudaExternalSemaphoreSignalParams{ struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; } keyedMutex; unsigned int reserved[12]; } params; unsigned int flags; unsigned int reserved[16]; }; struct __device_builtin__ cudaExternalSemaphoreWaitParams { struct { struct { unsigned long long value; } fence; union { void *fence; unsigned long long reserved; } nvSciSync; struct { unsigned long long key; unsigned int timeoutMs; } keyedMutex; unsigned int reserved[10]; } params; unsigned int flags; unsigned int reserved[16]; }; typedef __device_builtin__ enum cudaError cudaError_t; typedef __device_builtin__ struct CUstream_st *cudaStream_t; typedef __device_builtin__ struct CUevent_st *cudaEvent_t; typedef __device_builtin__ struct cudaGraphicsResource *cudaGraphicsResource_t; typedef __device_builtin__ struct CUexternalMemory_st *cudaExternalMemory_t; typedef __device_builtin__ struct CUexternalSemaphore_st *cudaExternalSemaphore_t; typedef __device_builtin__ struct CUgraph_st *cudaGraph_t; typedef __device_builtin__ struct CUgraphNode_st *cudaGraphNode_t; typedef __device_builtin__ struct CUuserObject_st *cudaUserObject_t; typedef __device_builtin__ struct CUfunc_st *cudaFunction_t; typedef __device_builtin__ struct CUkern_st *cudaKernel_t; typedef __device_builtin__ struct CUmemPoolHandle_st *cudaMemPool_t; enum __device_builtin__ cudaCGScope { cudaCGScopeInvalid = 0, cudaCGScopeGrid = 1, cudaCGScopeMultiGrid = 2 }; struct __device_builtin__ cudaLaunchParams { void *func; dim3 gridDim; dim3 blockDim; void **args; size_t sharedMem; cudaStream_t stream; }; struct __device_builtin__ cudaKernelNodeParams { void* func; dim3 gridDim; dim3 blockDim; unsigned int sharedMemBytes; void **kernelParams; void **extra; }; struct __device_builtin__ cudaExternalSemaphoreSignalNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreSignalParams* paramsArray; unsigned int numExtSems; }; struct __device_builtin__ cudaExternalSemaphoreWaitNodeParams { cudaExternalSemaphore_t* extSemArray; const struct cudaExternalSemaphoreWaitParams* paramsArray; unsigned int numExtSems; }; enum __device_builtin__ cudaGraphNodeType { cudaGraphNodeTypeKernel = 0x00, cudaGraphNodeTypeMemcpy = 0x01, cudaGraphNodeTypeMemset = 0x02, cudaGraphNodeTypeHost = 0x03, cudaGraphNodeTypeGraph = 0x04, cudaGraphNodeTypeEmpty = 0x05, cudaGraphNodeTypeWaitEvent = 0x06, cudaGraphNodeTypeEventRecord = 0x07, cudaGraphNodeTypeExtSemaphoreSignal = 0x08, cudaGraphNodeTypeExtSemaphoreWait = 0x09, cudaGraphNodeTypeMemAlloc = 0x0a, cudaGraphNodeTypeMemFree = 0x0b, cudaGraphNodeTypeCount }; typedef struct CUgraphExec_st* cudaGraphExec_t; enum __device_builtin__ cudaGraphExecUpdateResult { cudaGraphExecUpdateSuccess = 0x0, cudaGraphExecUpdateError = 0x1, cudaGraphExecUpdateErrorTopologyChanged = 0x2, cudaGraphExecUpdateErrorNodeTypeChanged = 0x3, cudaGraphExecUpdateErrorFunctionChanged = 0x4, cudaGraphExecUpdateErrorParametersChanged = 0x5, cudaGraphExecUpdateErrorNotSupported = 0x6, cudaGraphExecUpdateErrorUnsupportedFunctionChange = 0x7, cudaGraphExecUpdateErrorAttributesChanged = 0x8 }; typedef __device_builtin__ enum cudaGraphInstantiateResult { cudaGraphInstantiateSuccess = 0, cudaGraphInstantiateError = 1, cudaGraphInstantiateInvalidStructure = 2, cudaGraphInstantiateNodeOperationNotSupported = 3, cudaGraphInstantiateMultipleDevicesNotSupported = 4 } cudaGraphInstantiateResult; typedef __device_builtin__ struct cudaGraphInstantiateParams_st { unsigned long long flags; cudaStream_t uploadStream; cudaGraphNode_t errNode_out; cudaGraphInstantiateResult result_out; } cudaGraphInstantiateParams; typedef __device_builtin__ struct cudaGraphExecUpdateResultInfo_st { enum cudaGraphExecUpdateResult result; cudaGraphNode_t errorNode; cudaGraphNode_t errorFromNode; } cudaGraphExecUpdateResultInfo; enum __device_builtin__ cudaGetDriverEntryPointFlags { cudaEnableDefault = 0x0, cudaEnableLegacyStream = 0x1, cudaEnablePerThreadDefaultStream = 0x2 }; enum __device_builtin__ cudaDriverEntryPointQueryResult { cudaDriverEntryPointSuccess = 0, cudaDriverEntryPointSymbolNotFound = 1, cudaDriverEntryPointVersionNotSufficent = 2 }; enum __device_builtin__ cudaGraphDebugDotFlags { cudaGraphDebugDotFlagsVerbose = 1<<0, cudaGraphDebugDotFlagsKernelNodeParams = 1<<2, cudaGraphDebugDotFlagsMemcpyNodeParams = 1<<3, cudaGraphDebugDotFlagsMemsetNodeParams = 1<<4, cudaGraphDebugDotFlagsHostNodeParams = 1<<5, cudaGraphDebugDotFlagsEventNodeParams = 1<<6, cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 1<<7, cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 1<<8, cudaGraphDebugDotFlagsKernelNodeAttributes = 1<<9, cudaGraphDebugDotFlagsHandles = 1<<10 }; enum __device_builtin__ cudaGraphInstantiateFlags { cudaGraphInstantiateFlagAutoFreeOnLaunch = 1 , cudaGraphInstantiateFlagUpload = 2 , cudaGraphInstantiateFlagDeviceLaunch = 4 , cudaGraphInstantiateFlagUseNodePriority = 8 }; typedef __device_builtin__ enum cudaLaunchMemSyncDomain { cudaLaunchMemSyncDomainDefault = 0, cudaLaunchMemSyncDomainRemote = 1 } cudaLaunchMemSyncDomain; typedef __device_builtin__ struct cudaLaunchMemSyncDomainMap_st { unsigned char default_; unsigned char remote; } cudaLaunchMemSyncDomainMap; typedef __device_builtin__ enum cudaLaunchAttributeID { cudaLaunchAttributeIgnore = 0 , cudaLaunchAttributeAccessPolicyWindow = 1 , cudaLaunchAttributeCooperative = 2 , cudaLaunchAttributeSynchronizationPolicy = 3 , cudaLaunchAttributeClusterDimension = 4 , cudaLaunchAttributeClusterSchedulingPolicyPreference = 5 , cudaLaunchAttributeProgrammaticStreamSerialization = 6 , cudaLaunchAttributeProgrammaticEvent = 7 , cudaLaunchAttributePriority = 8 , cudaLaunchAttributeMemSyncDomainMap = 9 , cudaLaunchAttributeMemSyncDomain = 10 } cudaLaunchAttributeID; typedef __device_builtin__ union cudaLaunchAttributeValue { char pad[64]; struct cudaAccessPolicyWindow accessPolicyWindow; int cooperative; enum cudaSynchronizationPolicy syncPolicy; struct { unsigned int x; unsigned int y; unsigned int z; } clusterDim; enum cudaClusterSchedulingPolicy clusterSchedulingPolicyPreference; int programmaticStreamSerializationAllowed; struct { cudaEvent_t event; int flags; int triggerAtBlockStart; } programmaticEvent; int priority; cudaLaunchMemSyncDomainMap memSyncDomainMap; cudaLaunchMemSyncDomain memSyncDomain; } cudaLaunchAttributeValue; typedef __device_builtin__ struct cudaLaunchAttribute_st { cudaLaunchAttributeID id; char pad[8 - sizeof(cudaLaunchAttributeID)]; cudaLaunchAttributeValue val; } cudaLaunchAttribute; typedef __device_builtin__ struct cudaLaunchConfig_st { dim3 gridDim; dim3 blockDim; size_t dynamicSmemBytes; cudaStream_t stream; cudaLaunchAttribute *attrs; unsigned int numAttrs; } cudaLaunchConfig_t; #define cudaStreamAttrID cudaLaunchAttributeID #define cudaStreamAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaStreamAttributeSynchronizationPolicy cudaLaunchAttributeSynchronizationPolicy #define cudaStreamAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaStreamAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaStreamAttributePriority cudaLaunchAttributePriority #define cudaStreamAttrValue cudaLaunchAttributeValue #define cudaKernelNodeAttrID cudaLaunchAttributeID #define cudaKernelNodeAttributeAccessPolicyWindow cudaLaunchAttributeAccessPolicyWindow #define cudaKernelNodeAttributeCooperative cudaLaunchAttributeCooperative #define cudaKernelNodeAttributePriority cudaLaunchAttributePriority #define cudaKernelNodeAttributeClusterDimension cudaLaunchAttributeClusterDimension #define cudaKernelNodeAttributeClusterSchedulingPolicyPreference cudaLaunchAttributeClusterSchedulingPolicyPreference #define cudaKernelNodeAttributeMemSyncDomainMap cudaLaunchAttributeMemSyncDomainMap #define cudaKernelNodeAttributeMemSyncDomain cudaLaunchAttributeMemSyncDomain #define cudaKernelNodeAttrValue cudaLaunchAttributeValue #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_DRIVER_TYPES_H__ #endif #undef __CUDA_DEPRECATED #endif #define cudaTextureType1D 0x01 #define cudaTextureType2D 0x02 #define cudaTextureType3D 0x03 #define cudaTextureTypeCubemap 0x0C #define cudaTextureType1DLayered 0xF1 #define cudaTextureType2DLayered 0xF2 #define cudaTextureTypeCubemapLayered 0xFC enum __device_builtin__ cudaTextureAddressMode { cudaAddressModeWrap = 0, cudaAddressModeClamp = 1, cudaAddressModeMirror = 2, cudaAddressModeBorder = 3 }; enum __device_builtin__ cudaTextureFilterMode { cudaFilterModePoint = 0, cudaFilterModeLinear = 1 }; enum __device_builtin__ cudaTextureReadMode { cudaReadModeElementType = 0, cudaReadModeNormalizedFloat = 1 }; struct __device_builtin__ cudaTextureDesc { enum cudaTextureAddressMode addressMode[3]; enum cudaTextureFilterMode filterMode; enum cudaTextureReadMode readMode; int sRGB; float borderColor[4]; int normalizedCoords; unsigned int maxAnisotropy; enum cudaTextureFilterMode mipmapFilterMode; float mipmapLevelBias; float minMipmapLevelClamp; float maxMipmapLevelClamp; int disableTrilinearOptimization; int seamlessCubemap; }; typedef __device_builtin__ unsigned long long cudaTextureObject_t; #endif #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif extern "C" { #define __DEVICE_FUNCTIONS_DECL__ __host__ __device__ #if !defined(_MSC_VER) #define __CUDA_MATH_CRTIMP #else #if _MSC_VER < 1900 #define __CUDA_MATH_CRTIMP _CRTIMP #else #define __CUDA_MATH_CRTIMP _ACRTIMP #endif #endif #if defined(__ANDROID__) && (__ANDROID_API__ <= 20) && !defined(__aarch64__) static __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ int abs(int); static __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ long int labs(long int); static __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ long long int llabs(long long int); #else #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ int __cdecl abs(int a) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ long int __cdecl labs(long int a) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __cudart_builtin__ long long int llabs(long long int a) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl fabs(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float fabsf(float x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int min(const int a, const int b); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int umin(const unsigned int a, const unsigned int b); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int llmin(const long long int a, const long long int b); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int ullmin(const unsigned long long int a, const unsigned long long int b); #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float fminf(float x, float y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl fminf(float x, float y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double fmin(double x, double y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl fmin(double x, double y); #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int max(const int a, const int b); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned int umax(const unsigned int a, const unsigned int b); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int llmax(const long long int a, const long long int b); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ unsigned long long int ullmax(const unsigned long long int a, const unsigned long long int b); #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float fmaxf(float x, float y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl fmaxf(float x, float y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double fmax(double, double) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl fmax(double, double); #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl sin(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl cos(double x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void sincos(double x, double *sptr, double *cptr) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void sincosf(float x, float *sptr, float *cptr) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl tan(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl sqrt(double x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double rsqrt(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float rsqrtf(float x); #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double log2(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl log2(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double exp2(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl exp2(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float exp2f(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl exp2f(float x); #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double exp10(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float exp10f(float x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double expm1(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl expm1(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float expm1f(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl expm1f(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float log2f(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl log2f(float x); #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl log10(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl log(double x) __THROW; #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double log1p(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl log1p(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float log1pf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl log1pf(float x); #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl floor(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl exp(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl cosh(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl sinh(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl tanh(double x) __THROW; #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double acosh(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl acosh(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float acoshf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl acoshf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double asinh(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl asinh(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float asinhf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl asinhf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double atanh(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl atanh(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float atanhf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl atanhf(float x); #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl ldexp(double x, int exp) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float ldexpf(float x, int exp) __THROW; #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double logb(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl logb(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float logbf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl logbf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int ilogb(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP int __cdecl ilogb(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int ilogbf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP int __cdecl ilogbf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double scalbn(double x, int n) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl scalbn(double x, int n); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float scalbnf(float x, int n) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl scalbnf(float x, int n); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double scalbln(double x, long int n) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl scalbln(double x, long int n); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float scalblnf(float x, long int n) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl scalblnf(float x, long int n); #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl frexp(double x, int *nptr) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float frexpf(float x, int *nptr) __THROW; #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double round(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl round(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float roundf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl roundf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long int lround(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP long int __cdecl lround(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long int lroundf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP long int __cdecl lroundf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int llround(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP long long int __cdecl llround(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int llroundf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP long long int __cdecl llroundf(float x); #endif #if defined(__CUDA_ARCH__) || defined(__DOXYGEN_ONLY__) #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double rint(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl rint(double x); #endif #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float rintf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl rintf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long int lrint(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP long int __cdecl lrint(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long int lrintf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP long int __cdecl lrintf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int llrint(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP long long int __cdecl llrint(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ long long int llrintf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP long long int __cdecl llrintf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double nearbyint(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl nearbyint(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float nearbyintf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl nearbyintf(float x); #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl ceil(double x) __THROW; #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double trunc(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl trunc(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float truncf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl truncf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double fdim(double x, double y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl fdim(double x, double y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float fdimf(float x, float y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl fdimf(float x, float y); #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl atan2(double y, double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl atan(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl acos(double x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl asin(double x) __THROW; #if defined(_WIN32) #if defined(_MSC_VER) && _MSC_VER < 1900 static __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __CRTDECL hypot(double x, double y); #else extern _ACRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl hypot(double x, double y); #endif #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double hypot(double x, double y) __THROW; #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __device__ __device_builtin__ double rhypot(double x, double y) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if defined(_WIN32) static __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __CRTDECL hypotf(float x, float y); #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float hypotf(float x, float y) __THROW; #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __device__ __device_builtin__ float rhypotf(float x, float y) __THROW; extern __device__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl norm3d(double a, double b, double c) __THROW; extern __device__ __device_builtin__ double rnorm3d(double a, double b, double c) __THROW; extern __device__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl norm4d(double a, double b, double c, double d) __THROW; extern __device__ __device_builtin__ double rnorm4d(double a, double b, double c, double d) __THROW; extern "C++" __device__ __device_builtin__ double norm(int dim, double const * p) __THROW; extern __device__ __device_builtin__ double rnorm(int dim, double const * p) __THROW; extern __device__ __device_builtin__ float rnormf(int dim, float const * p) __THROW; extern "C++" __device__ __device_builtin__ float normf(int dim, float const * p) __THROW; extern __device__ __device_builtin__ float norm3df(float a, float b, float c) __THROW; extern __device__ __device_builtin__ float rnorm3df(float a, float b, float c) __THROW; extern __device__ __device_builtin__ float norm4df(float a, float b, float c, float d) __THROW; extern __device__ __device_builtin__ float rnorm4df(float a, float b, float c, float d) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double cbrt(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl cbrt(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float cbrtf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl cbrtf(float x); #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double rcbrt(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float rcbrtf(float x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double sinpi(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float sinpif(float x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double cospi(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float cospif(float x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void sincospi(double x, double *sptr, double *cptr); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ void sincospif(float x, float *sptr, float *cptr); #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl pow(double x, double y) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl modf(double x, double *iptr) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double __cdecl fmod(double x, double y) __THROW; #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double remainder(double x, double y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl remainder(double x, double y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float remainderf(float x, float y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl remainderf(float x, float y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double remquo(double x, double y, int *quo) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl remquo(double x, double y, int *quo); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float remquof(float x, float y, int *quo) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl remquof(float x, float y, int *quo); #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl j0(double x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float j0f(float x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl j1(double x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float j1f(float x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl jn(int n, double x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float jnf(int n, float x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl y0(double x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float y0f(float x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl y1(double x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float y1f(float x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl yn(int n, double x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float ynf(int n, float x) __THROW; extern __device__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl cyl_bessel_i0(double x) __THROW; extern __device__ __device_builtin__ float cyl_bessel_i0f(float x) __THROW; extern __device__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl cyl_bessel_i1(double x) __THROW; extern __device__ __device_builtin__ float cyl_bessel_i1f(float x) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double erf(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl erf(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float erff(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl erff(float x); #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double erfinv(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float erfinvf(float x); #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double erfc(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl erfc(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float erfcf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl erfcf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double lgamma(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl lgamma(double x); #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double erfcinv(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float erfcinvf(float x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double normcdfinv(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float normcdfinvf(float x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double normcdf(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float normcdff(float x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double erfcx(double x); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float erfcxf(float x); #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float lgammaf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl lgammaf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double tgamma(double x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl tgamma(double x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float tgammaf(float x) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl tgammaf(float x); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double copysign(double x, double y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl copysign(double x, double y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float copysignf(float x, float y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl copysignf(float x, float y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double nextafter(double x, double y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl nextafter(double x, double y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float nextafterf(float x, float y) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl nextafterf(float x, float y); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double nan(const char *tagp) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl nan(const char *tagp); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float nanf(const char *tagp) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl nanf(const char *tagp); #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isinff(float) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isnanf(float) __THROW; #if defined(__APPLE__) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isfinited(double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isfinitef(float) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __signbitd(double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isnand(double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isinfd(double) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __finite(double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __finitef(float) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __signbit(double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isnan(double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isinf(double) __THROW; #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __signbitf(float) __THROW; #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double fma(double x, double y, double z) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP double __cdecl fma(double x, double y, double z); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float fmaf(float x, float y, float z) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ __CUDA_MATH_CRTIMP float __cdecl fmaf(float x, float y, float z); #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __signbitl(long double) __THROW; #if defined(__APPLE__) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isfinite(long double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isinf(long double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isnan(long double) __THROW; #else extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __finitel(long double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isinfl(long double) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int __isnanl(long double) __THROW; #endif #if defined(_WIN32) && defined(_M_AMD64) extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl acosf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl asinf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl atanf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl atan2f(float, float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl cosf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl sinf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl tanf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl coshf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl sinhf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl tanhf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl expf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl logf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl log10f(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl modff(float, float*) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl powf(float, float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl sqrtf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl ceilf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl floorf(float) __THROW; extern __CUDA_MATH_CRTIMP __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float __cdecl fmodf(float, float) __THROW; #else #if defined(__QNX__) && !defined(_LIBCPP_VERSION) namespace std { #endif extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float acosf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float asinf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float atanf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float atan2f(float y, float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float cosf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float sinf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float tanf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float coshf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float sinhf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float tanhf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float logf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float expf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float log10f(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float modff(float x, float *iptr) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float powf(float x, float y) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float sqrtf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float ceilf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float floorf(float x) __THROW; extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float fmodf(float x, float y) __THROW; #if defined(__QNX__) extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float _FLog(float, int); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float _FCosh(float, float); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float _FSinh(float, float); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float _FSinx(float, unsigned int, int); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int _FDsign(float); extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ int _Dsign(double); #endif #if defined(__QNX__) && !defined(_LIBCPP_VERSION) } #endif #endif } #if !defined(__CUDACC_RTC__) #include <math.h> #include <stdlib.h> #ifndef __CUDA_INTERNAL_SKIP_CPP_HEADERS__ #include <cmath> #include <cstdlib> #endif #endif #if defined(__CUDACC_RTC__) __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(float x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(long double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(float x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(long double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(float x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(long double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(float x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(long double x); #elif defined(__GNUC__) #undef signbit #undef isfinite #undef isnan #undef isinf #if defined(__APPLE__) __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(float x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(double x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(long double x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(float x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(double x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(long double x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(double x) throw(); #if !defined(_LIBCPP_VERSION) || _LIBCPP_VERSION < 7000 __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(float x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(long double x); #else template <typename T> __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool __libcpp_isnan(T) _NOEXCEPT; inline _LIBCPP_INLINE_VISIBILITY __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isnan(float x) _NOEXCEPT; inline _LIBCPP_INLINE_VISIBILITY __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isnan(long double x) _NOEXCEPT; #endif __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(double x) throw(); #if !defined(_LIBCPP_VERSION) || _LIBCPP_VERSION < 7000 __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(float x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(long double x); #else template <typename T> __cudart_builtin__ __DEVICE_FUNCTIONS_DECL__ bool __libcpp_isinf(T) _NOEXCEPT; inline _LIBCPP_INLINE_VISIBILITY __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isinf(float x) _NOEXCEPT; inline _LIBCPP_INLINE_VISIBILITY __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isinf(long double x) _NOEXCEPT; #endif #else #if ((defined _GLIBCXX_MATH_H) && _GLIBCXX_MATH_H) && (__cplusplus >= 201103L) #if !defined(_NVHPC_CUDA) namespace std { __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool signbit(float x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool signbit(double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool signbit(long double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isfinite(float x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isfinite(double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isfinite(long double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isnan(float x); #if _GLIBCXX_HAVE_OBSOLETE_ISNAN && !_GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(double x) throw(); #else __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isnan(double x); #endif __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isnan(long double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isinf(float x); #if _GLIBCXX_HAVE_OBSOLETE_ISINF && !_GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(double x) throw(); #else __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isinf(double x); #endif __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ constexpr bool isinf(long double x); } #endif #else #if defined(__QNX__) #if (__QNX__) && !defined(_LIBCPP_VERSION) namespace std { __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool signbit(float x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool signbit(double x); __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool signbit(long double x); } #else static __inline__ __DEVICE_FUNCTIONS_DECL__ bool signbit(const float x); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool signbit(const double x); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool signbit(const long double x); #endif static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isfinite(const float a); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isfinite(const double a); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isfinite(const long double a); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isnan(const float a); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isnan(const double a); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isnan(const long double a); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isinf(const float a); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isinf(const double a); static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isinf(const long double a); #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(const float x); #if defined(__ICC) __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(const double x) throw(); #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(const double x); #endif __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int signbit(const long double x); __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(const float x); #if defined(__ICC) __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(const double x) throw(); #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(const double x); #endif __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isfinite(const long double x); #if (defined(__ANDROID__) || defined(__HORIZON__)) && _LIBCPP_VERSION >= 8000 template <typename T> __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool __libcpp_isnan(T) _NOEXCEPT; inline _LIBCPP_INLINE_VISIBILITY __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isnan(float x) _NOEXCEPT; #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(float x); #endif #if defined(__ANDROID__) || defined(__HORIZON__) #if !defined(_LIBCPP_VERSION) __forceinline__ #endif #if _LIBCPP_VERSION >= 7000 #ifdef _LIBCPP_PREFERRED_OVERLOAD _LIBCPP_INLINE_VISIBILITY _LIBCPP_PREFERRED_OVERLOAD __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isnan(double x) _NOEXCEPT; #endif #else __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(double x); #endif #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(double x) throw(); #endif #if (defined(__ANDROID__) || defined(__HORIZON__)) && _LIBCPP_VERSION >= 8000 inline _LIBCPP_INLINE_VISIBILITY __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isnan(long double x) _NOEXCEPT; #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isnan(long double x); #endif #if (defined(__ANDROID__) || defined(__HORIZON__)) && _LIBCPP_VERSION >= 8000 static __inline__ __cudart_builtin__ __DEVICE_FUNCTIONS_DECL__ unsigned __FLOAT_BITS(float __f); static __inline__ __cudart_builtin__ __DEVICE_FUNCTIONS_DECL__ unsigned long long __DOUBLE_BITS(double __f); template <typename T> __cudart_builtin__ __DEVICE_FUNCTIONS_DECL__ bool __libcpp_isinf(T) _NOEXCEPT; inline _LIBCPP_INLINE_VISIBILITY __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isinf(float x) _NOEXCEPT; #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(float x); #endif #if defined(__ANDROID__) || defined(__HORIZON__) #if !defined(_LIBCPP_VERSION) __forceinline__ #endif #if _LIBCPP_VERSION >= 7000 #ifdef _LIBCPP_PREFERRED_OVERLOAD _LIBCPP_INLINE_VISIBILITY _LIBCPP_PREFERRED_OVERLOAD __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isinf(double x) _NOEXCEPT; #endif #else __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(double x); #endif #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(double x) throw(); #endif #if (defined(__ANDROID__) || defined(__HORIZON__)) && _LIBCPP_VERSION >= 8000 inline _LIBCPP_INLINE_VISIBILITY __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool isinf(long double x) _NOEXCEPT; #else __forceinline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ int isinf(long double x); #endif #endif #endif #endif #if !defined(_LIBCPP_VERSION) #if defined(__clang__) #if __has_include(<ext/random>) #define __NV_GLIBCXX_VERSION 40800 #endif #endif #if !defined(__NV_GLIBCXX_VERSION) #define __NV_GLIBCXX_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) #endif #endif #if !defined(__HORIZON__) || !defined(_LIBCPP_VERSION) || _LIBCPP_VERSION < 3800 #if defined(__arm__) && !defined(_STLPORT_VERSION) && !_GLIBCXX_USE_C99 #if !defined(__ANDROID__) || (defined(__NV_GLIBCXX_VERSION) && __NV_GLIBCXX_VERSION < 40800) #if defined(__QNX__) namespace std { __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long long int abs (long long int a); } #elif defined(__HORIZON__) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #pragma GCC system_header #endif _LIBCPP_BEGIN_NAMESPACE_STD __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long long int abs (long long int a) throw(); _LIBCPP_END_NAMESPACE_STD #else static __inline__ __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long long int abs(long long int a); #endif #endif #endif #endif #if defined(__NV_GLIBCXX_VERSION) && __NV_GLIBCXX_VERSION < 40800 && !defined(__ibmxl__) #if !defined(_STLPORT_VERSION) namespace __gnu_cxx { #endif extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long long int abs(long long int a); #if !defined(_STLPORT_VERSION) } #endif #endif namespace std { template<typename T> extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ T __pow_helper(T, int); template<typename T> extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ T __cmath_power(T, unsigned int); } using std::abs; using std::fabs; using std::ceil; using std::floor; using std::sqrt; #if !defined(_LIBCPP_VERSION) || _LIBCPP_VERSION < 3800 using std::pow; #endif using std::log; using std::log10; using std::fmod; using std::modf; using std::exp; using std::frexp; using std::ldexp; using std::asin; using std::sin; using std::sinh; using std::acos; using std::cos; using std::cosh; using std::atan; using std::atan2; using std::tan; using std::tanh; #elif defined(_WIN32) extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ __CUDA_MATH_CRTIMP double __cdecl _hypot(double x, double y); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ __CUDA_MATH_CRTIMP float __cdecl _hypotf(float x, float y); #if (!defined(_MSC_VER) || _MSC_VER < 1800) static __inline__ __DEVICE_FUNCTIONS_DECL__ int signbit(long double a); #else #if _MSC_VER >= 1900 #define __SIGNBIT_THROW throw() #else #define __SIGNBIT_THROW #endif extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ bool signbit(long double) __SIGNBIT_THROW; extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ __device_builtin__ __CUDA_MATH_CRTIMP int _ldsign(long double); #undef __SIGNBIT_THROW #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #define __RETURN_TYPE int static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE signbit(double a); #undef __RETURN_TYPE #else #define __RETURN_TYPE bool #if _MSC_VER >= 1900 #define __SIGNBIT_THROW throw() #else #define __SIGNBIT_THROW #endif extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ __RETURN_TYPE signbit(double) __SIGNBIT_THROW; extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ __device_builtin__ __CUDA_MATH_CRTIMP int _dsign(double); #undef __RETURN_TYPE #undef __SIGNBIT_THROW #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #define __RETURN_TYPE int static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE signbit(float a); #undef __RETURN_TYPE #else #define __RETURN_TYPE bool #if _MSC_VER >= 1900 #define __SIGNBIT_THROW throw() #else #define __SIGNBIT_THROW #endif extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ __RETURN_TYPE signbit(float) __SIGNBIT_THROW; extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ __device_builtin__ __CUDA_MATH_CRTIMP int _fdsign(float); #undef __RETURN_TYPE #undef __SIGNBIT_THROW #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) static __inline__ __DEVICE_FUNCTIONS_DECL__ int isinf(long double a); #else static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isinf(long double a); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #define __RETURN_TYPE int static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isinf(double a); #undef __RETURN_TYPE #else #define __RETURN_TYPE bool static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isinf(double a); #undef __RETURN_TYPE #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #define __RETURN_TYPE int static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isinf(float a); #undef __RETURN_TYPE #else #define __RETURN_TYPE bool static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isinf(float a); #undef __RETURN_TYPE #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) static __inline__ __DEVICE_FUNCTIONS_DECL__ int isnan(long double a); #else static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isnan(long double a); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #define __RETURN_TYPE int static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isnan(double a); #undef __RETURN_TYPE #else #define __RETURN_TYPE bool static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isnan(double a); #undef __RETURN_TYPE #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #define __RETURN_TYPE int static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isnan(float a); #undef __RETURN_TYPE #else #define __RETURN_TYPE bool static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isnan(float a); #undef __RETURN_TYPE #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) static __inline__ __DEVICE_FUNCTIONS_DECL__ int isfinite(long double a); #else static __inline__ __DEVICE_FUNCTIONS_DECL__ bool isfinite(long double a); #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #define __RETURN_TYPE int static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isfinite(double a); #undef __RETURN_TYPE #else #define __RETURN_TYPE bool static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isfinite(double a); #undef __RETURN_TYPE #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #define __RETURN_TYPE int static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isfinite(float a); #undef __RETURN_TYPE #else #define __RETURN_TYPE bool static __inline__ __DEVICE_FUNCTIONS_DECL__ __RETURN_TYPE isfinite(float a); #undef __RETURN_TYPE #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) template<class T> extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ T _Pow_int(T, int); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long long int abs(long long int); #else template<class T> extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ T _Pow_int(T, int) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long long int abs(long long int) throw(); #endif #endif #if __cplusplus >= 201103L #define __NV_NOEXCEPT noexcept #else #define __NV_NOEXCEPT throw() #endif #if defined(_LIBCPP_VERSION) && defined(_LIBCPP_BEGIN_NAMESPACE_STD) && !defined(_STLPORT_VERSION) #if defined(__clang__) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wc++11-extensions" #endif #if _LIBCPP_VERSION < 3800 _LIBCPP_BEGIN_NAMESPACE_STD #endif #elif defined(__GNUC__) && !defined(_STLPORT_VERSION) namespace std { #endif #if defined(__CUDACC_RTC__) || defined(__GNUC__) #if defined(__CUDACC_RTC__) || \ (defined(__NV_GLIBCXX_VERSION) && __NV_GLIBCXX_VERSION >= 40800) || \ defined(__ibmxl__) extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long long int abs(long long int); #endif #endif #if defined(__CUDACC_RTC__) || \ (!defined(_MSC_VER) || _MSC_VER < 1800) && \ (!defined(_LIBCPP_VERSION) || (_LIBCPP_VERSION < 1101)) extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long int __cdecl abs(long int); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl abs(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ double __cdecl abs(double); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl fabs(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl ceil(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl floor(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl sqrt(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl pow(float, float); #if !defined(__QNX__) #if defined(__GNUC__) && __cplusplus >= 201103L && !defined(_LIBCPP_VERSION) template<typename _Tp, typename _Up> extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ typename __gnu_cxx::__promote_2<_Tp, _Up>::__type pow(_Tp, _Up); #else extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl pow(float, int); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ double __cdecl pow(double, int); #endif #endif extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl log(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl log10(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl fmod(float, float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl modf(float, float*); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl exp(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl frexp(float, int*); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl ldexp(float, int); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl asin(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl sin(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl sinh(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl acos(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl cos(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl cosh(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl atan(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl atan2(float, float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl tan(float); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl tanh(float); #else extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long int __cdecl abs(long int) throw(); #if defined(_LIBCPP_VERSION) extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ long long int __cdecl abs(long long int) throw(); #endif extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl abs(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ double __cdecl abs(double) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl fabs(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl ceil(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl floor(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl sqrt(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl pow(float, float) throw(); #if defined(_LIBCPP_VERSION) #if (defined (__ANDROID__) || defined(__HORIZON__)) && (_LIBCPP_VERSION >= 9000) template <class _A1, class _A2> extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ #if _LIBCPP_VERSION >= 14000 typename std::__enable_if_t #else typename std::_EnableIf #endif < std::is_arithmetic<_A1>::value && std::is_arithmetic<_A2>::value, std::__promote<_A1, _A2> >::type pow(_A1 __lcpp_x, _A2 __lcpp_y) __NV_NOEXCEPT; #elif (defined(__APPLE__) && __clang_major__ >= 7) || _LIBCPP_VERSION >= 3800 || defined(__QNX__) template <class _Tp, class _Up> extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ typename std::__lazy_enable_if < std::is_arithmetic<_Tp>::value && std::is_arithmetic<_Up>::value, std::__promote<_Tp, _Up> >::type pow(_Tp __x, _Up __y) __NV_NOEXCEPT; #else template <class _Tp, class _Up> extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ typename enable_if < std::is_arithmetic<_Tp>::value && std::is_arithmetic<_Up>::value, typename std::__promote<_Tp, _Up>::type >::type pow(_Tp __x, _Up __y) __NV_NOEXCEPT; #endif #else #if !(defined(__GNUC__) && __cplusplus >= 201103L) #if (defined(_MSC_VER) && (_MSC_VER >= 1928)) && !(defined __CUDA_INTERNAL_SKIP_CPP_HEADERS__) template <class _Ty1, class _Ty2, ::std:: enable_if_t< ::std:: is_arithmetic_v<_Ty1> && ::std:: is_arithmetic_v<_Ty2>, int> > [[nodiscard]] __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ ::std:: _Common_float_type_t<_Ty1, _Ty2> __cdecl pow(_Ty1 _Left, _Ty2 _Right) noexcept; #else extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl pow(float, int) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ double __cdecl pow(double, int) throw(); #endif #endif #endif extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl log(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl log10(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl fmod(float, float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl modf(float, float*) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl exp(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl frexp(float, int*) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl ldexp(float, int) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl asin(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl sin(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl sinh(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl acos(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl cos(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl cosh(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl atan(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl atan2(float, float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl tan(float) throw(); extern __DEVICE_FUNCTIONS_DECL__ __cudart_builtin__ float __cdecl tanh(float) throw(); #endif #if defined(_LIBCPP_VERSION) && defined(_LIBCPP_END_NAMESPACE_STD) && !defined(_STLPORT_VERSION) #if _LIBCPP_VERSION < 3800 _LIBCPP_END_NAMESPACE_STD #endif #if defined(__clang__) #pragma clang diagnostic pop #endif #elif defined(__GNUC__) && !defined(_STLPORT_VERSION) } #endif #undef __DEVICE_FUNCTIONS_DECL__ #undef __NV_NOEXCEPT #if defined(__CUDACC_RTC__) #define __MATH_FUNCTIONS_DECL__ __host__ __device__ #define __MATH_FUNCTIONS_DEVICE_DECL__ __device__ #else #define __MATH_FUNCTIONS_DECL__ static inline __host__ __device__ __cudart_builtin__ #define __MATH_FUNCTIONS_DEVICE_DECL__ static inline __device__ __cudart_builtin__ #endif #if (!defined(_MSC_VER) || _MSC_VER < 1800) #if defined(__QNX__) || (defined(_LIBCPP_VERSION) && _LIBCPP_VERSION >= 3800) #if defined(__QNX__) && (!defined(_LIBCPP_VERSION) || _LIBCPP_VERSION < 8000) #if defined(_LIBCPP_VERSION) #define __NV_NOEXCEPT _NOEXCEPT _LIBCPP_BEGIN_NAMESPACE_STD #else #define __NV_NOEXCEPT namespace std { __host__ __device__ __cudart_builtin__ int ilogbf(float a); #endif #else #define __NV_NOEXCEPT _NOEXCEPT #endif __host__ __device__ __cudart_builtin__ float logb(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ int ilogb(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float scalbn(float a, int b) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float scalbln(float a, long int b) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float exp2(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float expm1(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float log2(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float log1p(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float acosh(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float asinh(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float atanh(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float hypot(float a, float b) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float cbrt(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float erf(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float erfc(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float lgamma(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float tgamma(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float copysign(float a, float b) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float nextafter(float a, float b) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float remainder(float a, float b) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float remquo(float a, float b, int *quo) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float round(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ long int lround(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ long long int llround(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float trunc(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float rint(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ long int lrint(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ long long int llrint(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float nearbyint(float a) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float fdim(float a, float b) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float fma(float a, float b, float c) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float fmax(float a, float b) __NV_NOEXCEPT; __host__ __device__ __cudart_builtin__ float fmin(float a, float b) __NV_NOEXCEPT; #if defined(__QNX__) && (!defined(_LIBCPP_VERSION) || _LIBCPP_VERSION < 8000) #if defined(_LIBCPP_VERSION) _LIBCPP_END_NAMESPACE_STD using _VSTD::logb; using _VSTD::ilogb; using _VSTD::scalbn; using _VSTD::scalbln; using _VSTD::exp2; using _VSTD::expm1; using _VSTD::log2; using _VSTD::log1p; using _VSTD::acosh; using _VSTD::asinh; using _VSTD::atanh; using _VSTD::hypot; using _VSTD::cbrt; using _VSTD::erf; using _VSTD::erfc; using _VSTD::lgamma; using _VSTD::tgamma; using _VSTD::copysign; using _VSTD::nextafter; using _VSTD::remainder; using _VSTD::remquo; using _VSTD::round; using _VSTD::lround; using _VSTD::llround; using _VSTD::trunc; using _VSTD::rint; using _VSTD::lrint; using _VSTD::llrint; using _VSTD::nearbyint; using _VSTD::fdim; using _VSTD::fma; using _VSTD::fmax; using _VSTD::fmin; #else } #endif #endif #undef __NV_NOEXCEPT #else #if ((defined _GLIBCXX_MATH_H) && _GLIBCXX_MATH_H) && (__cplusplus >= 201103L) namespace std { __host__ __device__ __cudart_builtin__ constexpr float logb(float a); __host__ __device__ __cudart_builtin__ constexpr int ilogb(float a); __host__ __device__ __cudart_builtin__ constexpr float scalbn(float a, int b); __host__ __device__ __cudart_builtin__ constexpr float scalbln(float a, long int b); __host__ __device__ __cudart_builtin__ constexpr float exp2(float a); __host__ __device__ __cudart_builtin__ constexpr float expm1(float a); __host__ __device__ __cudart_builtin__ constexpr float log2(float a); __host__ __device__ __cudart_builtin__ constexpr float log1p(float a); __host__ __device__ __cudart_builtin__ constexpr float acosh(float a); __host__ __device__ __cudart_builtin__ constexpr float asinh(float a); __host__ __device__ __cudart_builtin__ constexpr float atanh(float a); __host__ __device__ __cudart_builtin__ constexpr float hypot(float a, float b); __host__ __device__ __cudart_builtin__ constexpr float cbrt(float a); __host__ __device__ __cudart_builtin__ constexpr float erf(float a); __host__ __device__ __cudart_builtin__ constexpr float erfc(float a); __host__ __device__ __cudart_builtin__ constexpr float lgamma(float a); __host__ __device__ __cudart_builtin__ constexpr float tgamma(float a); __host__ __device__ __cudart_builtin__ constexpr float copysign(float a, float b); __host__ __device__ __cudart_builtin__ constexpr float nextafter(float a, float b); __host__ __device__ __cudart_builtin__ constexpr float remainder(float a, float b); __host__ __device__ __cudart_builtin__ float remquo(float a, float b, int *quo); __host__ __device__ __cudart_builtin__ constexpr float round(float a); __host__ __device__ __cudart_builtin__ constexpr long int lround(float a); __host__ __device__ __cudart_builtin__ constexpr long long int llround(float a); __host__ __device__ __cudart_builtin__ constexpr float trunc(float a); __host__ __device__ __cudart_builtin__ constexpr float rint(float a); __host__ __device__ __cudart_builtin__ constexpr long int lrint(float a); __host__ __device__ __cudart_builtin__ constexpr long long int llrint(float a); __host__ __device__ __cudart_builtin__ constexpr float nearbyint(float a); __host__ __device__ __cudart_builtin__ constexpr float fdim(float a, float b); __host__ __device__ __cudart_builtin__ constexpr float fma(float a, float b, float c); __host__ __device__ __cudart_builtin__ constexpr float fmax(float a, float b); __host__ __device__ __cudart_builtin__ constexpr float fmin(float a, float b); } #else __MATH_FUNCTIONS_DECL__ float logb(float a); __MATH_FUNCTIONS_DECL__ int ilogb(float a); __MATH_FUNCTIONS_DECL__ float scalbn(float a, int b); __MATH_FUNCTIONS_DECL__ float scalbln(float a, long int b); __MATH_FUNCTIONS_DECL__ float exp2(float a); __MATH_FUNCTIONS_DECL__ float expm1(float a); __MATH_FUNCTIONS_DECL__ float log2(float a); __MATH_FUNCTIONS_DECL__ float log1p(float a); __MATH_FUNCTIONS_DECL__ float acosh(float a); __MATH_FUNCTIONS_DECL__ float asinh(float a); __MATH_FUNCTIONS_DECL__ float atanh(float a); __MATH_FUNCTIONS_DECL__ float hypot(float a, float b); __MATH_FUNCTIONS_DECL__ float cbrt(float a); __MATH_FUNCTIONS_DECL__ float erf(float a); __MATH_FUNCTIONS_DECL__ float erfc(float a); __MATH_FUNCTIONS_DECL__ float lgamma(float a); __MATH_FUNCTIONS_DECL__ float tgamma(float a); __MATH_FUNCTIONS_DECL__ float copysign(float a, float b); __MATH_FUNCTIONS_DECL__ float nextafter(float a, float b); __MATH_FUNCTIONS_DECL__ float remainder(float a, float b); __MATH_FUNCTIONS_DECL__ float remquo(float a, float b, int *quo); __MATH_FUNCTIONS_DECL__ float round(float a); __MATH_FUNCTIONS_DECL__ long int lround(float a); __MATH_FUNCTIONS_DECL__ long long int llround(float a); __MATH_FUNCTIONS_DECL__ float trunc(float a); __MATH_FUNCTIONS_DECL__ float rint(float a); __MATH_FUNCTIONS_DECL__ long int lrint(float a); __MATH_FUNCTIONS_DECL__ long long int llrint(float a); __MATH_FUNCTIONS_DECL__ float nearbyint(float a); __MATH_FUNCTIONS_DECL__ float fdim(float a, float b); __MATH_FUNCTIONS_DECL__ float fma(float a, float b, float c); __MATH_FUNCTIONS_DECL__ float fmax(float a, float b); __MATH_FUNCTIONS_DECL__ float fmin(float a, float b); #endif #endif #else extern __host__ __device__ __cudart_builtin__ float __cdecl logb(float) throw(); extern __host__ __device__ __cudart_builtin__ int __cdecl ilogb(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl scalbn(float, float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl scalbln(float, long int) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl exp2(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl expm1(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl log2(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl log1p(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl acosh(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl asinh(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl atanh(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl hypot(float, float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl cbrt(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl erf(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl erfc(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl lgamma(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl tgamma(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl copysign(float, float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl nextafter(float, float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl remainder(float, float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl remquo(float, float, int *) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl round(float) throw(); extern __host__ __device__ __cudart_builtin__ long int __cdecl lround(float) throw(); extern __host__ __device__ __cudart_builtin__ long long int __cdecl llround(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl trunc(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl rint(float) throw(); extern __host__ __device__ __cudart_builtin__ long int __cdecl lrint(float) throw(); extern __host__ __device__ __cudart_builtin__ long long int __cdecl llrint(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl nearbyint(float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl fdim(float, float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl fma(float, float, float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl fmax(float, float) throw(); extern __host__ __device__ __cudart_builtin__ float __cdecl fmin(float, float) throw(); #endif __MATH_FUNCTIONS_DECL__ float exp10(const float a); __MATH_FUNCTIONS_DECL__ float rsqrt(const float a); __MATH_FUNCTIONS_DECL__ float rcbrt(const float a); __MATH_FUNCTIONS_DECL__ float sinpi(const float a); __MATH_FUNCTIONS_DECL__ float cospi(const float a); __MATH_FUNCTIONS_DECL__ void sincospi(const float a, float *const sptr, float *const cptr); __MATH_FUNCTIONS_DECL__ void sincos(const float a, float *const sptr, float *const cptr); __MATH_FUNCTIONS_DECL__ float j0(const float a); __MATH_FUNCTIONS_DECL__ float j1(const float a); __MATH_FUNCTIONS_DECL__ float jn(const int n, const float a); __MATH_FUNCTIONS_DECL__ float y0(const float a); __MATH_FUNCTIONS_DECL__ float y1(const float a); __MATH_FUNCTIONS_DECL__ float yn(const int n, const float a); __MATH_FUNCTIONS_DEVICE_DECL__ float cyl_bessel_i0(const float a); __MATH_FUNCTIONS_DEVICE_DECL__ float cyl_bessel_i1(const float a); __MATH_FUNCTIONS_DECL__ float erfinv(const float a); __MATH_FUNCTIONS_DECL__ float erfcinv(const float a); __MATH_FUNCTIONS_DECL__ float normcdfinv(const float a); __MATH_FUNCTIONS_DECL__ float normcdf(const float a); __MATH_FUNCTIONS_DECL__ float erfcx(const float a); __MATH_FUNCTIONS_DECL__ double copysign(const double a, const float b); __MATH_FUNCTIONS_DECL__ double copysign(const float a, const double b); __MATH_FUNCTIONS_DECL__ unsigned int min(const unsigned int a, const unsigned int b); __MATH_FUNCTIONS_DECL__ unsigned int min(const int a, const unsigned int b); __MATH_FUNCTIONS_DECL__ unsigned int min(const unsigned int a, const int b); __MATH_FUNCTIONS_DECL__ long int min(const long int a, const long int b); __MATH_FUNCTIONS_DECL__ unsigned long int min(const unsigned long int a, const unsigned long int b); __MATH_FUNCTIONS_DECL__ unsigned long int min(const long int a, const unsigned long int b); __MATH_FUNCTIONS_DECL__ unsigned long int min(const unsigned long int a, const long int b); __MATH_FUNCTIONS_DECL__ long long int min(const long long int a, const long long int b); __MATH_FUNCTIONS_DECL__ unsigned long long int min(const unsigned long long int a, const unsigned long long int b); __MATH_FUNCTIONS_DECL__ unsigned long long int min(const long long int a, const unsigned long long int b); __MATH_FUNCTIONS_DECL__ unsigned long long int min(const unsigned long long int a, const long long int b); __MATH_FUNCTIONS_DECL__ float min(const float a, const float b); __MATH_FUNCTIONS_DECL__ double min(const double a, const double b); __MATH_FUNCTIONS_DECL__ double min(const float a, const double b); __MATH_FUNCTIONS_DECL__ double min(const double a, const float b); __MATH_FUNCTIONS_DECL__ unsigned int max(const unsigned int a, const unsigned int b); __MATH_FUNCTIONS_DECL__ unsigned int max(const int a, const unsigned int b); __MATH_FUNCTIONS_DECL__ unsigned int max(const unsigned int a, const int b); __MATH_FUNCTIONS_DECL__ long int max(const long int a, const long int b); __MATH_FUNCTIONS_DECL__ unsigned long int max(const unsigned long int a, const unsigned long int b); __MATH_FUNCTIONS_DECL__ unsigned long int max(const long int a, const unsigned long int b); __MATH_FUNCTIONS_DECL__ unsigned long int max(const unsigned long int a, const long int b); __MATH_FUNCTIONS_DECL__ long long int max(const long long int a, const long long int b); __MATH_FUNCTIONS_DECL__ unsigned long long int max(const unsigned long long int a, const unsigned long long int b); __MATH_FUNCTIONS_DECL__ unsigned long long int max(const long long int a, const unsigned long long int b); __MATH_FUNCTIONS_DECL__ unsigned long long int max(const unsigned long long int a, const long long int b); __MATH_FUNCTIONS_DECL__ float max(const float a, const float b); __MATH_FUNCTIONS_DECL__ double max(const double a, const double b); __MATH_FUNCTIONS_DECL__ double max(const float a, const double b); __MATH_FUNCTIONS_DECL__ double max(const double a, const float b); #undef __MATH_FUNCTIONS_DECL__ #undef __MATH_FUNCTIONS_DEVICE_DECL__ extern "C"{ inline __device__ void *__nv_aligned_device_malloc(size_t size, size_t align) { __device__ void *__nv_aligned_device_malloc_impl(size_t, size_t); return __nv_aligned_device_malloc_impl(size, align); } } #endif #if !defined(__CUDACC__) #include <crt/func_macro.h> #if defined(_WIN32) #pragma warning(disable : 4211) #endif __func__(double rsqrt(double a)); __func__(double rcbrt(double a)); __func__(double sinpi(double a)); __func__(double cospi(double a)); __func__(void sincospi(double a, double *sptr, double *cptr)); __func__(double erfinv(double a)); __func__(double erfcinv(double a)); __func__(double normcdfinv(double a)); __func__(double normcdf(double a)); __func__(double erfcx(double a)); __func__(float rsqrtf(float a)); __func__(float rcbrtf(float a)); __func__(float sinpif(float a)); __func__(float cospif(float a)); __func__(void sincospif(float a, float *sptr, float *cptr)); __func__(float erfinvf(float a)); __func__(float erfcinvf(float a)); __func__(float normcdfinvf(float a)); __func__(float normcdff(float a)); __func__(float erfcxf(float a)); __func__(int min(int a, int b)); __func__(unsigned int umin(unsigned int a, unsigned int b)); __func__(long long int llmin(long long int a, long long int b)); __func__(unsigned long long int ullmin(unsigned long long int a, unsigned long long int b)); __func__(int max(int a, int b)); __func__(unsigned int umax(unsigned int a, unsigned int b)); __func__(long long int llmax(long long int a, long long int b)); __func__(unsigned long long int ullmax(unsigned long long int a, unsigned long long int b)); #if defined(_WIN32) || defined(__APPLE__) || defined (__ANDROID__) __func__(int __isnan(double a)); #endif #if defined(_WIN32) || defined(__APPLE__) || defined (__QNX__) __func__(void sincos(double a, double *sptr, double *cptr)); #endif #if defined(_WIN32) || defined(__APPLE__) __func__(double exp10(double a)); __func__(float exp10f(float a)); __func__(void sincosf(float a, float *sptr, float *cptr)); __func__(int __isinf(double a)); #endif #if (defined(_WIN32) && (!defined(_MSC_VER) || _MSC_VER < 1800)) || defined (__ANDROID__) __func__(double log2(double a)); #endif #if defined(_WIN32) __func__(int __signbit(double a)); __func__(int __finite(double a)); __func__(int __signbitl(long double a)); __func__(int __signbitf(float a)); __func__(int __finitel(long double a)); __func__(int __finitef(float a)); __func__(int __isinfl(long double a)); __func__(int __isinff(float a)); __func__(int __isnanl(long double a)); __func__(int __isnanf(float a)); #endif #if defined(_WIN32) && (!defined(_MSC_VER) || _MSC_VER < 1800) __func__(double copysign(double a, double b)); __func__(double fmax(double a, double b)); __func__(double fmin(double a, double b)); __func__(double trunc(double a)); __func__(double round(double a)); __func__(long int lround(double a)); __func__(long long int llround(double a)); __func__(double rint(double a)); __func__(double nearbyint(double a)); __func__(long int lrint(double a)); __func__(long long int llrint(double a)); __func__(double fdim(double a, double b)); __func__(double scalbn(double a, int b)); __func__(double scalbln(double a, long int b)); __func__(double exp2(double a)); __func__(double log1p(double a)); __func__(double expm1(double a)); __func__(double cbrt(double a)); __func__(double acosh(double a)); __func__(double asinh(double a)); __func__(double atanh(double a)); __func__(int ilogb(double a)); __func__(double logb(double a)); __func__(double remquo(double a, double b, int *quo)); __func__(double remainder(double a, double b)); __func__(double fma (double a, double b, double c)); __func__(double nextafter(double a, double b)); __func__(double erf(double a)); __func__(double erfc(double a)); __func__(double lgamma(double a)); __func__(unsigned long long int __internal_host_nan_kernel(const char *s)); __func__(double nan(const char *tagp)); __func__(double __host_tgamma_kernel(double a)); __func__(double __host_stirling_poly(double a)); __func__(double __host_tgamma_stirling(double a)); __func__(double tgamma(double a)); __func__(float fmaxf(float a, float b)); __func__(float fminf(float a, float b)); __func__(float roundf(float a)); __func__(long int lroundf(float a)); __func__(long long int llroundf(float a)); __func__(float truncf(float a)); __func__(float rintf(float a)); __func__(float nearbyintf(float a)); __func__(long int lrintf(float a)); __func__(long long int llrintf(float a)); __func__(float logbf(float a)); __func__(float scalblnf(float a, long int b)); __func__(float log2f(float a)); __func__(float exp2f(float a)); __func__(float acoshf(float a)); __func__(float asinhf(float a)); __func__(float atanhf(float a)); __func__(float cbrtf(float a)); __func__(float expm1f(float a)); __func__(float fdimf(float a, float b)); __func__(float log1pf(float a)); __func__(float scalbnf(float a, int b)); __func__(float fmaf(float a, float b, float c)); __func__(int ilogbf(float a)); __func__(float erff(float a)); __func__(float erfcf(float a)); __func__(float lgammaf(float a)); __func__(float tgammaf(float a)); __func__(float remquof(float a, float b, int *quo)); __func__(float remainderf(float a, float b)); __func__(float copysignf(float a, float b)); __func__(float nextafterf(float a, float b)); __func__(float nanf(const char *tagp)); #endif #if defined(_WIN32) #pragma warning(default: 4211) #endif #endif #if !defined(__CUDACC_RTC__) #include "math_functions.hpp" #endif #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_MATH_FUNCTIONS_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_MATH_FUNCTIONS_H__ #endif #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_COMMON_FUNCTIONS_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_COMMON_FUNCTIONS_H__ #endif #if !defined(__DEVICE_LAUNCH_PARAMETERS_H__) #define __DEVICE_LAUNCH_PARAMETERS_H__ #if !defined(__VECTOR_TYPES_H__) #define __VECTOR_TYPES_H__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #ifndef __DOXYGEN_ONLY__ #if !defined(__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__) #if defined(_MSC_VER) #pragma message("crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead.") #else #warning "crt/host_defines.h is an internal header file and must not be used directly. Please use cuda_runtime_api.h or cuda_runtime.h instead." #endif #define __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #define __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #if !defined(__HOST_DEFINES_H__) #define __HOST_DEFINES_H__ #if defined(__GNUC__) || (defined(__PGIC__) && defined(__linux__)) || defined(__CUDA_LIBDEVICE__) || defined(__CUDACC_RTC__) #if defined(__CUDACC_RTC__) #define __volatile__ volatile #endif #define __no_return__ \ __attribute__((noreturn)) #if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__) #define __noinline__ \ __attribute__((noinline)) #endif #define __forceinline__ \ __inline__ __attribute__((always_inline)) #define __align__(n) \ __attribute__((aligned(n))) #define __thread__ \ __thread #define __import__ #define __export__ #define __cdecl #define __annotate__(a) \ __attribute__((a)) #define __location__(a) \ __annotate__(a) #define CUDARTAPI #define CUDARTAPI_CDECL #elif defined(_MSC_VER) #if _MSC_VER >= 1400 #define __restrict__ \ __restrict #else #define __restrict__ #endif #define __inline__ \ __inline #define __no_return__ \ __declspec(noreturn) #define __noinline__ \ __declspec(noinline) #define __forceinline__ \ __forceinline #define __align__(n) \ __declspec(align(n)) #define __thread__ \ __declspec(thread) #define __import__ \ __declspec(dllimport) #define __export__ \ __declspec(dllexport) #define __annotate__(a) \ __declspec(a) #define __location__(a) \ __annotate__(__##a##__) #define CUDARTAPI \ __stdcall #define CUDARTAPI_CDECL \ __cdecl #else #define __inline__ #if !defined(__align__) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for '__align__' !!! --- #endif #if !defined(CUDARTAPI) #error --- !!! UNKNOWN COMPILER: please provide a CUDA compatible definition for 'CUDARTAPI' !!! --- #endif #endif #if (defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3 && !defined(__clang__)))) || \ (defined(_MSC_VER) && _MSC_VER < 1900) || \ (!defined(__GNUC__) && !defined(_MSC_VER)) #define __specialization_static \ static #else #define __specialization_static #endif #if !defined(__CUDACC__) && !defined(__CUDA_LIBDEVICE__) #undef __annotate__ #define __annotate__(a) #else #define __launch_bounds__(...) \ __annotate__(launch_bounds(__VA_ARGS__)) #endif #if defined(__CUDACC__) || defined(__CUDA_LIBDEVICE__) || \ defined(__GNUC__) || defined(_WIN64) #define __builtin_align__(a) \ __align__(a) #else #define __builtin_align__(a) #endif #if defined(__CUDACC__) || !defined(__grid_constant__) #define __grid_constant__ \ __location__(grid_constant) #endif #if defined(__CUDACC__) || !defined(__host__) #define __host__ \ __location__(host) #endif #if defined(__CUDACC__) || !defined(__device__) #define __device__ \ __location__(device) #endif #if defined(__CUDACC__) || !defined(__global__) #define __global__ \ __location__(global) #endif #if defined(__CUDACC__) || !defined(__shared__) #define __shared__ \ __location__(shared) #endif #if defined(__CUDACC__) || !defined(__constant__) #define __constant__ \ __location__(constant) #endif #if defined(__CUDACC__) || !defined(__managed__) #define __managed__ \ __location__(managed) #endif #if !defined(__CUDACC__) #define __device_builtin__ #define __device_builtin_texture_type__ #define __device_builtin_surface_type__ #define __cudart_builtin__ #else #define __device_builtin__ \ __location__(device_builtin) #define __device_builtin_texture_type__ \ __location__(device_builtin_texture_type) #define __device_builtin_surface_type__ \ __location__(device_builtin_surface_type) #define __cudart_builtin__ \ __location__(cudart_builtin) #endif #if defined(__CUDACC__) || !defined(__cluster_dims__) #if defined(_MSC_VER) #define __cluster_dims__(...) \ __declspec(__cluster_dims__(__VA_ARGS__)) #else #define __cluster_dims__(...) \ __attribute__((cluster_dims(__VA_ARGS__))) #endif #endif #define __CUDA_ARCH_HAS_FEATURE__(_FEAT) __CUDA_ARCH_FEAT_##_FEAT #endif #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_HOST_DEFINES_H__ #endif #endif #if !defined(__CUDACC__) && !defined(__CUDACC_RTC__) && \ defined(_WIN32) && !defined(_WIN64) #pragma warning(push) #pragma warning(disable: 4201 4408) #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ tag \ { \ union \ { \ struct { members }; \ struct { long long int :1,:0; }; \ }; \ } #else #define __cuda_builtin_vector_align8(tag, members) \ struct __device_builtin__ __align__(8) tag \ { \ members \ } #endif struct __device_builtin__ char1 { signed char x; }; struct __device_builtin__ uchar1 { unsigned char x; }; struct __device_builtin__ __align__(2) char2 { signed char x, y; }; struct __device_builtin__ __align__(2) uchar2 { unsigned char x, y; }; struct __device_builtin__ char3 { signed char x, y, z; }; struct __device_builtin__ uchar3 { unsigned char x, y, z; }; struct __device_builtin__ __align__(4) char4 { signed char x, y, z, w; }; struct __device_builtin__ __align__(4) uchar4 { unsigned char x, y, z, w; }; struct __device_builtin__ short1 { short x; }; struct __device_builtin__ ushort1 { unsigned short x; }; struct __device_builtin__ __align__(4) short2 { short x, y; }; struct __device_builtin__ __align__(4) ushort2 { unsigned short x, y; }; struct __device_builtin__ short3 { short x, y, z; }; struct __device_builtin__ ushort3 { unsigned short x, y, z; }; __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;); __cuda_builtin_vector_align8(ushort4, unsigned short x; unsigned short y; unsigned short z; unsigned short w;); struct __device_builtin__ int1 { int x; }; struct __device_builtin__ uint1 { unsigned int x; }; __cuda_builtin_vector_align8(int2, int x; int y;); __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;); struct __device_builtin__ int3 { int x, y, z; }; struct __device_builtin__ uint3 { unsigned int x, y, z; }; struct __device_builtin__ __builtin_align__(16) int4 { int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) uint4 { unsigned int x, y, z, w; }; struct __device_builtin__ long1 { long int x; }; struct __device_builtin__ ulong1 { unsigned long x; }; #if defined(_WIN32) __cuda_builtin_vector_align8(long2, long int x; long int y;); __cuda_builtin_vector_align8(ulong2, unsigned long int x; unsigned long int y;); #else struct __device_builtin__ __align__(2*sizeof(long int)) long2 { long int x, y; }; struct __device_builtin__ __align__(2*sizeof(unsigned long int)) ulong2 { unsigned long int x, y; }; #endif struct __device_builtin__ long3 { long int x, y, z; }; struct __device_builtin__ ulong3 { unsigned long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) long4 { long int x, y, z, w; }; struct __device_builtin__ __builtin_align__(16) ulong4 { unsigned long int x, y, z, w; }; struct __device_builtin__ float1 { float x; }; #if !defined(__CUDACC__) && defined(__arm__) && \ defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-pedantic" struct __device_builtin__ __attribute__((aligned(8))) float2 { float x; float y; float __cuda_gnu_arm_ice_workaround[0]; }; #pragma GCC poison __cuda_gnu_arm_ice_workaround #pragma GCC diagnostic pop #else __cuda_builtin_vector_align8(float2, float x; float y;); #endif struct __device_builtin__ float3 { float x, y, z; }; struct __device_builtin__ __builtin_align__(16) float4 { float x, y, z, w; }; struct __device_builtin__ longlong1 { long long int x; }; struct __device_builtin__ ulonglong1 { unsigned long long int x; }; struct __device_builtin__ __builtin_align__(16) longlong2 { long long int x, y; }; struct __device_builtin__ __builtin_align__(16) ulonglong2 { unsigned long long int x, y; }; struct __device_builtin__ longlong3 { long long int x, y, z; }; struct __device_builtin__ ulonglong3 { unsigned long long int x, y, z; }; struct __device_builtin__ __builtin_align__(16) longlong4 { long long int x, y, z ,w; }; struct __device_builtin__ __builtin_align__(16) ulonglong4 { unsigned long long int x, y, z, w; }; struct __device_builtin__ double1 { double x; }; struct __device_builtin__ __builtin_align__(16) double2 { double x, y; }; struct __device_builtin__ double3 { double x, y, z; }; struct __device_builtin__ __builtin_align__(16) double4 { double x, y, z, w; }; #if !defined(__CUDACC__) && defined(_WIN32) && !defined(_WIN64) #pragma warning(pop) #endif typedef __device_builtin__ struct char1 char1; typedef __device_builtin__ struct uchar1 uchar1; typedef __device_builtin__ struct char2 char2; typedef __device_builtin__ struct uchar2 uchar2; typedef __device_builtin__ struct char3 char3; typedef __device_builtin__ struct uchar3 uchar3; typedef __device_builtin__ struct char4 char4; typedef __device_builtin__ struct uchar4 uchar4; typedef __device_builtin__ struct short1 short1; typedef __device_builtin__ struct ushort1 ushort1; typedef __device_builtin__ struct short2 short2; typedef __device_builtin__ struct ushort2 ushort2; typedef __device_builtin__ struct short3 short3; typedef __device_builtin__ struct ushort3 ushort3; typedef __device_builtin__ struct short4 short4; typedef __device_builtin__ struct ushort4 ushort4; typedef __device_builtin__ struct int1 int1; typedef __device_builtin__ struct uint1 uint1; typedef __device_builtin__ struct int2 int2; typedef __device_builtin__ struct uint2 uint2; typedef __device_builtin__ struct int3 int3; typedef __device_builtin__ struct uint3 uint3; typedef __device_builtin__ struct int4 int4; typedef __device_builtin__ struct uint4 uint4; typedef __device_builtin__ struct long1 long1; typedef __device_builtin__ struct ulong1 ulong1; typedef __device_builtin__ struct long2 long2; typedef __device_builtin__ struct ulong2 ulong2; typedef __device_builtin__ struct long3 long3; typedef __device_builtin__ struct ulong3 ulong3; typedef __device_builtin__ struct long4 long4; typedef __device_builtin__ struct ulong4 ulong4; typedef __device_builtin__ struct float1 float1; typedef __device_builtin__ struct float2 float2; typedef __device_builtin__ struct float3 float3; typedef __device_builtin__ struct float4 float4; typedef __device_builtin__ struct longlong1 longlong1; typedef __device_builtin__ struct ulonglong1 ulonglong1; typedef __device_builtin__ struct longlong2 longlong2; typedef __device_builtin__ struct ulonglong2 ulonglong2; typedef __device_builtin__ struct longlong3 longlong3; typedef __device_builtin__ struct ulonglong3 ulonglong3; typedef __device_builtin__ struct longlong4 longlong4; typedef __device_builtin__ struct ulonglong4 ulonglong4; typedef __device_builtin__ struct double1 double1; typedef __device_builtin__ struct double2 double2; typedef __device_builtin__ struct double3 double3; typedef __device_builtin__ struct double4 double4; struct __device_builtin__ dim3 { unsigned int x, y, z; #if defined(__cplusplus) #if __cplusplus >= 201103L __host__ __device__ constexpr dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ constexpr dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ constexpr operator uint3(void) const { return uint3{x, y, z}; } #else __host__ __device__ dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1) : x(vx), y(vy), z(vz) {} __host__ __device__ dim3(uint3 v) : x(v.x), y(v.y), z(v.z) {} __host__ __device__ operator uint3(void) const { uint3 t; t.x = x; t.y = y; t.z = z; return t; } #endif #endif }; typedef __device_builtin__ struct dim3 dim3; #undef __cuda_builtin_vector_align8 #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_VECTOR_TYPES_H__ #endif #endif #if !defined(__STORAGE__) #if defined(__CUDACC_RTC__) #define __STORAGE__ \ extern const __device__ #else #define __STORAGE__ \ extern const #endif #endif #if defined(__cplusplus) extern "C" { #endif uint3 __device_builtin__ __STORAGE__ threadIdx; uint3 __device_builtin__ __STORAGE__ blockIdx; dim3 __device_builtin__ __STORAGE__ blockDim; dim3 __device_builtin__ __STORAGE__ gridDim; int __device_builtin__ __STORAGE__ warpSize; #undef __STORAGE__ #if defined(__cplusplus) } #endif #if !defined(__cudaGet_threadIdx) #define __cudaGet_threadIdx() \ threadIdx #endif #if !defined(__cudaGet_blockIdx) #define __cudaGet_blockIdx() \ blockIdx #endif #if !defined(__cudaGet_blockDim) #define __cudaGet_blockDim() \ blockDim #endif #if !defined(__cudaGet_gridDim) #define __cudaGet_gridDim() \ gridDim #endif #if !defined(__cudaGet_warpSize) #define __cudaGet_warpSize() \ warpSize #endif #endif #else #endif #endif #if defined(__DOXYGEN_ONLY__) || defined(CUDA_ENABLE_DEPRECATED) #define __CUDA_DEPRECATED #elif defined(_MSC_VER) #define __CUDA_DEPRECATED __declspec(deprecated) #elif defined(__GNUC__) #define __CUDA_DEPRECATED __attribute__((deprecated)) #else #define __CUDA_DEPRECATED #endif #if defined(__cplusplus) && !defined(__CUDACC_RTC__) #if __cplusplus >= 201103 #include <utility> #endif template<class T> static __inline__ __host__ cudaError_t cudaLaunchKernel( const T *func, dim3 gridDim, dim3 blockDim, void **args, size_t sharedMem = 0, cudaStream_t stream = 0 ) { return ::cudaLaunchKernel((const void *)func, gridDim, blockDim, args, sharedMem, stream); } #if __cplusplus >= 201103 || defined(__DOXYGEN_ONLY__) template<typename... ExpTypes, typename... ActTypes> static __inline__ __host__ cudaError_t cudaLaunchKernelEx( const cudaLaunchConfig_t *config, void (*kernel)(ExpTypes...), ActTypes &&... args ) { return [&](ExpTypes... coercedArgs){ void *pArgs[] = { &coercedArgs... }; return ::cudaLaunchKernelExC(config, (const void *)kernel, pArgs); }(std::forward<ActTypes>(args)...); } #endif template<class T> static __inline__ __host__ cudaError_t cudaLaunchCooperativeKernel( const T *func, dim3 gridDim, dim3 blockDim, void **args, size_t sharedMem = 0, cudaStream_t stream = 0 ) { return ::cudaLaunchCooperativeKernel((const void *)func, gridDim, blockDim, args, sharedMem, stream); } static __inline__ __host__ cudaError_t cudaEventCreate( cudaEvent_t *event, unsigned int flags ) { return ::cudaEventCreateWithFlags(event, flags); } static __inline__ __host__ cudaError_t cudaGraphInstantiate( cudaGraphExec_t *pGraphExec, cudaGraph_t graph, cudaGraphNode_t *pErrorNode, char *pLogBuffer, size_t bufferSize ) { (void)pErrorNode; (void)pLogBuffer; (void)bufferSize; return ::cudaGraphInstantiate(pGraphExec, graph, 0); } static __inline__ __host__ cudaError_t cudaMallocHost( void **ptr, size_t size, unsigned int flags ) { return ::cudaHostAlloc(ptr, size, flags); } template<class T> static __inline__ __host__ cudaError_t cudaHostAlloc( T **ptr, size_t size, unsigned int flags ) { return ::cudaHostAlloc((void**)(void*)ptr, size, flags); } template<class T> static __inline__ __host__ cudaError_t cudaHostGetDevicePointer( T **pDevice, void *pHost, unsigned int flags ) { return ::cudaHostGetDevicePointer((void**)(void*)pDevice, pHost, flags); } template<class T> static __inline__ __host__ cudaError_t cudaMallocManaged( T **devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal ) { return ::cudaMallocManaged((void**)(void*)devPtr, size, flags); } template<class T> static __inline__ __host__ cudaError_t cudaStreamAttachMemAsync( cudaStream_t stream, T *devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle ) { return ::cudaStreamAttachMemAsync(stream, (void*)devPtr, length, flags); } template<class T> static __inline__ __host__ cudaError_t cudaMalloc( T **devPtr, size_t size ) { return ::cudaMalloc((void**)(void*)devPtr, size); } template<class T> static __inline__ __host__ cudaError_t cudaMallocHost( T **ptr, size_t size, unsigned int flags = 0 ) { return cudaMallocHost((void**)(void*)ptr, size, flags); } template<class T> static __inline__ __host__ cudaError_t cudaMallocPitch( T **devPtr, size_t *pitch, size_t width, size_t height ) { return ::cudaMallocPitch((void**)(void*)devPtr, pitch, width, height); } static __inline__ __host__ cudaError_t cudaMallocAsync( void **ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream ) { return ::cudaMallocFromPoolAsync(ptr, size, memPool, stream); } template<class T> static __inline__ __host__ cudaError_t cudaMallocAsync( T **ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream ) { return ::cudaMallocFromPoolAsync((void**)(void*)ptr, size, memPool, stream); } template<class T> static __inline__ __host__ cudaError_t cudaMallocAsync( T **ptr, size_t size, cudaStream_t stream ) { return ::cudaMallocAsync((void**)(void*)ptr, size, stream); } template<class T> static __inline__ __host__ cudaError_t cudaMallocFromPoolAsync( T **ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream ) { return ::cudaMallocFromPoolAsync((void**)(void*)ptr, size, memPool, stream); } #if defined(__CUDACC__) template<class T> static __inline__ __host__ cudaError_t cudaMemcpyToSymbol( const T &symbol, const void *src, size_t count, size_t offset = 0, enum cudaMemcpyKind kind = cudaMemcpyHostToDevice ) { return ::cudaMemcpyToSymbol((const void*)&symbol, src, count, offset, kind); } template<class T> static __inline__ __host__ cudaError_t cudaMemcpyToSymbolAsync( const T &symbol, const void *src, size_t count, size_t offset = 0, enum cudaMemcpyKind kind = cudaMemcpyHostToDevice, cudaStream_t stream = 0 ) { return ::cudaMemcpyToSymbolAsync((const void*)&symbol, src, count, offset, kind, stream); } template<class T> static __inline__ __host__ cudaError_t cudaMemcpyFromSymbol( void *dst, const T &symbol, size_t count, size_t offset = 0, enum cudaMemcpyKind kind = cudaMemcpyDeviceToHost ) { return ::cudaMemcpyFromSymbol(dst, (const void*)&symbol, count, offset, kind); } template<class T> static __inline__ __host__ cudaError_t cudaMemcpyFromSymbolAsync( void *dst, const T &symbol, size_t count, size_t offset = 0, enum cudaMemcpyKind kind = cudaMemcpyDeviceToHost, cudaStream_t stream = 0 ) { return ::cudaMemcpyFromSymbolAsync(dst, (const void*)&symbol, count, offset, kind, stream); } template<class T> static __inline__ __host__ cudaError_t cudaGraphAddMemcpyNodeToSymbol( cudaGraphNode_t *pGraphNode, cudaGraph_t graph, const cudaGraphNode_t *pDependencies, size_t numDependencies, const T &symbol, const void* src, size_t count, size_t offset, enum cudaMemcpyKind kind) { return ::cudaGraphAddMemcpyNodeToSymbol(pGraphNode, graph, pDependencies, numDependencies, (const void*)&symbol, src, count, offset, kind); } template<class T> static __inline__ __host__ cudaError_t cudaGraphAddMemcpyNodeFromSymbol( cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const T &symbol, size_t count, size_t offset, enum cudaMemcpyKind kind) { return ::cudaGraphAddMemcpyNodeFromSymbol(pGraphNode, graph, pDependencies, numDependencies, dst, (const void*)&symbol, count, offset, kind); } template<class T> static __inline__ __host__ cudaError_t cudaGraphMemcpyNodeSetParamsToSymbol( cudaGraphNode_t node, const T &symbol, const void* src, size_t count, size_t offset, enum cudaMemcpyKind kind) { return ::cudaGraphMemcpyNodeSetParamsToSymbol(node, (const void*)&symbol, src, count, offset, kind); } template<class T> static __inline__ __host__ cudaError_t cudaGraphMemcpyNodeSetParamsFromSymbol( cudaGraphNode_t node, void* dst, const T &symbol, size_t count, size_t offset, enum cudaMemcpyKind kind) { return ::cudaGraphMemcpyNodeSetParamsFromSymbol(node, dst, (const void*)&symbol, count, offset, kind); } template<class T> static __inline__ __host__ cudaError_t cudaGraphExecMemcpyNodeSetParamsToSymbol( cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const T &symbol, const void* src, size_t count, size_t offset, enum cudaMemcpyKind kind) { return ::cudaGraphExecMemcpyNodeSetParamsToSymbol(hGraphExec, node, (const void*)&symbol, src, count, offset, kind); } template<class T> static __inline__ __host__ cudaError_t cudaGraphExecMemcpyNodeSetParamsFromSymbol( cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const T &symbol, size_t count, size_t offset, enum cudaMemcpyKind kind) { return ::cudaGraphExecMemcpyNodeSetParamsFromSymbol(hGraphExec, node, dst, (const void*)&symbol, count, offset, kind); } static __inline__ __host__ cudaError_t CUDARTAPI cudaGraphExecUpdate(cudaGraphExec_t hGraphExec, cudaGraph_t hGraph, cudaGraphNode_t *hErrorNode_out, enum cudaGraphExecUpdateResult *updateResult_out) { cudaGraphExecUpdateResultInfo resultInfo; cudaError_t status = cudaGraphExecUpdate(hGraphExec, hGraph, &resultInfo); if (hErrorNode_out) { *hErrorNode_out = resultInfo.errorNode; } if (updateResult_out) { *updateResult_out = resultInfo.result; } return status; } #if __cplusplus >= 201103 template<class T> static __inline__ __host__ cudaError_t cudaUserObjectCreate( cudaUserObject_t *object_out, T *objectToWrap, unsigned int initialRefcount, unsigned int flags) { return ::cudaUserObjectCreate( object_out, objectToWrap, [](void *vpObj) { delete reinterpret_cast<T *>(vpObj); }, initialRefcount, flags); } template<class T> static __inline__ __host__ cudaError_t cudaUserObjectCreate( cudaUserObject_t *object_out, T *objectToWrap, unsigned int initialRefcount, cudaUserObjectFlags flags) { return cudaUserObjectCreate(object_out, objectToWrap, initialRefcount, (unsigned int)flags); } #endif template<class T> static __inline__ __host__ cudaError_t cudaGetSymbolAddress( void **devPtr, const T &symbol ) { return ::cudaGetSymbolAddress(devPtr, (const void*)&symbol); } template<class T> static __inline__ __host__ cudaError_t cudaGetSymbolSize( size_t *size, const T &symbol ) { return ::cudaGetSymbolSize(size, (const void*)&symbol); } template<class T> static __inline__ __host__ cudaError_t cudaFuncSetCacheConfig( T *func, enum cudaFuncCache cacheConfig ) { return ::cudaFuncSetCacheConfig((const void*)func, cacheConfig); } template<class T> static __inline__ __host__ cudaError_t cudaFuncSetSharedMemConfig( T *func, enum cudaSharedMemConfig config ) { return ::cudaFuncSetSharedMemConfig((const void*)func, config); } #endif template<class T> static __inline__ __host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor( int *numBlocks, T func, int blockSize, size_t dynamicSMemSize) { return ::cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, (const void*)func, blockSize, dynamicSMemSize, cudaOccupancyDefault); } template<class T> static __inline__ __host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags( int *numBlocks, T func, int blockSize, size_t dynamicSMemSize, unsigned int flags) { return ::cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(numBlocks, (const void*)func, blockSize, dynamicSMemSize, flags); } class __cudaOccupancyB2DHelper { size_t n; public: inline __host__ CUDART_DEVICE __cudaOccupancyB2DHelper(size_t n_) : n(n_) {} inline __host__ CUDART_DEVICE size_t operator()(int) { return n; } }; template<typename UnaryFunction, class T> static __inline__ __host__ CUDART_DEVICE cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags( int *minGridSize, int *blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0, unsigned int flags = 0) { cudaError_t status; int device; struct cudaFuncAttributes attr; int maxThreadsPerMultiProcessor; int warpSize; int devMaxThreadsPerBlock; int multiProcessorCount; int funcMaxThreadsPerBlock; int occupancyLimit; int granularity; int maxBlockSize = 0; int numBlocks = 0; int maxOccupancy = 0; int blockSizeToTryAligned; int blockSizeToTry; int blockSizeLimitAligned; int occupancyInBlocks; int occupancyInThreads; size_t dynamicSMemSize; if (!minGridSize || !blockSize || !func) { return cudaErrorInvalidValue; } status = ::cudaGetDevice(&device); if (status != cudaSuccess) { return status; } status = cudaDeviceGetAttribute( &maxThreadsPerMultiProcessor, cudaDevAttrMaxThreadsPerMultiProcessor, device); if (status != cudaSuccess) { return status; } status = cudaDeviceGetAttribute( &warpSize, cudaDevAttrWarpSize, device); if (status != cudaSuccess) { return status; } status = cudaDeviceGetAttribute( &devMaxThreadsPerBlock, cudaDevAttrMaxThreadsPerBlock, device); if (status != cudaSuccess) { return status; } status = cudaDeviceGetAttribute( &multiProcessorCount, cudaDevAttrMultiProcessorCount, device); if (status != cudaSuccess) { return status; } status = cudaFuncGetAttributes(&attr, func); if (status != cudaSuccess) { return status; } funcMaxThreadsPerBlock = attr.maxThreadsPerBlock; occupancyLimit = maxThreadsPerMultiProcessor; granularity = warpSize; if (blockSizeLimit == 0) { blockSizeLimit = devMaxThreadsPerBlock; } if (devMaxThreadsPerBlock < blockSizeLimit) { blockSizeLimit = devMaxThreadsPerBlock; } if (funcMaxThreadsPerBlock < blockSizeLimit) { blockSizeLimit = funcMaxThreadsPerBlock; } blockSizeLimitAligned = ((blockSizeLimit + (granularity - 1)) / granularity) * granularity; for (blockSizeToTryAligned = blockSizeLimitAligned; blockSizeToTryAligned > 0; blockSizeToTryAligned -= granularity) { if (blockSizeLimit < blockSizeToTryAligned) { blockSizeToTry = blockSizeLimit; } else { blockSizeToTry = blockSizeToTryAligned; } dynamicSMemSize = blockSizeToDynamicSMemSize(blockSizeToTry); status = cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags( &occupancyInBlocks, func, blockSizeToTry, dynamicSMemSize, flags); if (status != cudaSuccess) { return status; } occupancyInThreads = blockSizeToTry * occupancyInBlocks; if (occupancyInThreads > maxOccupancy) { maxBlockSize = blockSizeToTry; numBlocks = occupancyInBlocks; maxOccupancy = occupancyInThreads; } if (occupancyLimit == maxOccupancy) { break; } } *minGridSize = numBlocks * multiProcessorCount; *blockSize = maxBlockSize; return status; } template<typename UnaryFunction, class T> static __inline__ __host__ CUDART_DEVICE cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMem( int *minGridSize, int *blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0) { return cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, blockSizeLimit, cudaOccupancyDefault); } template<class T> static __inline__ __host__ CUDART_DEVICE cudaError_t cudaOccupancyMaxPotentialBlockSize( int *minGridSize, int *blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0) { return cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(minGridSize, blockSize, func, __cudaOccupancyB2DHelper(dynamicSMemSize), blockSizeLimit, cudaOccupancyDefault); } template<class T> static __inline__ __host__ cudaError_t cudaOccupancyAvailableDynamicSMemPerBlock( size_t *dynamicSmemSize, T func, int numBlocks, int blockSize) { return ::cudaOccupancyAvailableDynamicSMemPerBlock(dynamicSmemSize, (const void*)func, numBlocks, blockSize); } template<class T> static __inline__ __host__ CUDART_DEVICE cudaError_t cudaOccupancyMaxPotentialBlockSizeWithFlags( int *minGridSize, int *blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0, unsigned int flags = 0) { return cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(minGridSize, blockSize, func, __cudaOccupancyB2DHelper(dynamicSMemSize), blockSizeLimit, flags); } template<class T> static __inline__ __host__ cudaError_t cudaOccupancyMaxPotentialClusterSize( int *clusterSize, T *func, const cudaLaunchConfig_t *config) { return ::cudaOccupancyMaxPotentialClusterSize(clusterSize, (const void*)func, config); } template<class T> static __inline__ __host__ cudaError_t cudaOccupancyMaxActiveClusters( int *numClusters, T *func, const cudaLaunchConfig_t *config) { return ::cudaOccupancyMaxActiveClusters(numClusters, (const void*)func, config); } #if defined __CUDACC__ template<class T> static __inline__ __host__ cudaError_t cudaFuncGetAttributes( struct cudaFuncAttributes *attr, T *entry ) { return ::cudaFuncGetAttributes(attr, (const void*)entry); } template<class T> static __inline__ __host__ cudaError_t cudaFuncSetAttribute( T *entry, enum cudaFuncAttribute attr, int value ) { return ::cudaFuncSetAttribute((const void*)entry, attr, value); } template<class T> static __inline__ __host__ cudaError_t cudaGetKernel( cudaKernel_t *kernelPtr, const T *entryFuncAddr ) { return ::cudaGetKernel(kernelPtr, (const void *)entryFuncAddr); } #endif #endif #if !defined(__CUDACC_RTC__) #if defined(__GNUC__) #if defined(__clang__) || (!defined(__PGIC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))) #pragma GCC diagnostic pop #endif #elif defined(_MSC_VER) #pragma warning(pop) #endif #endif #undef __CUDA_DEPRECATED #if defined(__UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_H__) #undef __CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ #undef __UNDEF_CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS_CUDA_RUNTIME_H__ #endif #endif BC��5b 0$IY����~-D2! �y !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L&� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��U( ���EDT ���*�Re�H)#�E!�-��B�� �S�0��� A9@S���L@W��~ʪ�@[�� ��@�WE0� �T@c�E��,2��(BhQZG�X��"?���[�)RE�"�Ȓ"XB�E�!��/����E{E@�/��(�Q`H��F�ЈateR�L#ň�"��5F�����"��IF��ʨ2��\F�Q2EHF3ڌ�):��ge���2\Q$Z�(�"� W(�V�+�*�P+�k�A��� �� ��pE\��ke��.K�2\qW($[��K�� W��V�+��p+��B��� �!��pEb��oe��1R�2\�X5$\�H�"� WPFW�+.��+��%Cʕ���!���`�(b�*�E���� ]W�ȡ�@Z��!���Z��E��;��E��:�ȼ"tw�g (�zz�zE��/j��F���(�"�g�W�����ct_�{��3�/�a�ˈ?C���/��?��?#�CN�,�@� �� ,�k���­;� �qE\w�q��`!�� ��b\qAX�+�2���W�Da1� �,,���qaX�+ ��;� qEb@� ���B\�����_~!�q�f����/Db!��r�D,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8no�P��� @������av@�1�7 � �P�av@h� �Aw�B"��� ��F.�� @���\0��`�2�`y7��|r�8�n ���q��@;����ແv@� ��w�R-��� ��].�� @�ڿ\0��`D�A.G� @�j� �C� ��h� �1z�~5�� ��v@x�q��@;�x�8�n �P;���7���Y@��`��- �� @��@��� ��}� �qz�FPp�@��v@�(��q��@;��\�8To �P{ �`�7�hOW0��`���+G� @��]���� ���� ��z��Yp〽�v@�-��q��@;�\�8do �P� �`�7�h�W0��`���+G� @�:����� "���-@ ��r� �H�9xC��� `����%0D��!��"��Y@ �`u�, �H�:`C$&��!R��@� n�� `�t�C@ ��w����!��0D��2 �Hq<hf@�i� �"��0h@���K �"����C���8 `���D@ �v{����!|�0DR��� �Ha>px@��χ+�"����C$x�Q `�T�6 @ �~~�J��!��\)0D���: �H�?p�@���  `����C�Y$�`�"�$��C��$�W `���� @ �ȓ�f��!R�V,0D�Q� �HoJ�@��N �"�)��C$Y%�^``�d��� @ �J�x��!��8P0D"[2 �HtKD����t��@"�.!� C$�%$y@`����T, �Z����!R?P0Drc"� �HLH"��)� �$@"�31� C${&��@`����, �z�hb��!�ZM0D�k¹ �H�M@:@�鶉�'"�7�C��& � `�t�T �r�x���!��Z0D�sr �H�NDq@�)׉�."�;!�C$~'$� `����� �ž�B��!R�i0D}B: �H�OL�@�����5"�?A�C$,�� `�$�Ee �r��!+o0D��� �H�X\�@��%��<"�e!�C$�,&� `�T�� �r�����!RzC|0Db�B��H�Y@�@��E�!>�"�h!�C�1-�� `����3 ���`���!R�H|0D��™�H�Z0�@�i] g>"�k��C��-�� `�Բ�3 �v�����!��|0D��"��H�[L�@�i| g>"�o�C�.�� `���4 �~�p���!R�|0D��™�H�\@�@�i��i>"�sQ�C��.�� `�d�E5 �ֺ`���!�]L}0D킩�H�]0�@�i� �>"�w��C��.�� `�T�s �f�X���!��J~0DB�b��Hs^$�@��ϋe?"�z��C�X/�� `���E�@ �̽`���!���~0D�����H&_$�@���$?"�|��C$�/�� `���ű@ ��H���!R��~0D �"��H�_ �@�I��d?"�~q�C$�/�� `����@ ��8���!��E0D�����H&h�@����?�"ɠq�C�4� `�ԃ� ���@���!R�0D�C#��H{h�@�) �?"��Q�C$W4� `�d�1"@ �t�@J��!�8J�0DbG9�H�h$'@����?"��A�C$�4�� `����@ �n�HF��!Xň0D*KCQ�Hoi*@��.��?"��A�C��4 `�����"@ �`�PJ��!�nF�0DO��H�i�@��=��?"ѧA�C$�4�� `��F�@ �J�@���!R��0D�Q���H9j�@��G �?"��Q�C$55�� `�$�F�@ ���PF��!R�ƈ0D:U���H�j�@�IV �?"�Q�C�_5�� `�t�F�@ ���H���!R�F~0D�Wc)�H&k%@��e �E"嬁�C��5�� `���F�@ ���H���!���0D�[��H�k�@�Iu��?"ͮa�C��5�� `�$���@ ���H���!R��0D�_#��H l�@�Ʉ eD"��a�C$6�� `���F�@ ���8���!��0Drc��Hvl�@�i� �?"��q�C$V6�� `�d���@ �z�hF��!�:Ɉ0D�g��H!m(#@�i� gD"崡�C��6 `���#@ ���H���!h�0D2mC��H�m2@�鶍EF"����C$�6�� `�4߆�@ ���@���!R��0D2q#��H/n2@��� EF"��q�C$37�� `�4��@ ���HF��!��ň0DZu#��H�n4@� ׍dD"��Q�C$s7� `���F1"@ ���H���!R��0Dy#��H,o�@�I��?"��a�C��7�� `�����@ ���H���!R��0D�{��H�o$6@� � �F"��q�C��7�� `�4���@ ���0���!��0D����H&x 8@�)�?"��1�C$<�� `�����@ �v�8p��!��0D*�C��Hwx8�@���?"����C�r<�� `����@ ���X���!RH�0DJ����H8y,�@�i,��?"���C$�<�� `�����@ �J�ht��!�l�0D�ͣ��H�y�@�i=$>"���C��<0 `�4�G&@ �P�@���!��0D���H>z `@��LL"�遀 C$;=0 `��& �L�@F��!���0D�Ճ� �H�z >@�I\DG"��A�C$w=�� `�d� ���@���!���0DZ��H3{`@�)gL"�큀 C��=0 `��& ���@���!R��0DJ��H�{ <@�)w�G�"���C��= `�Ծ�#& ���`���! ��0D�� �Hc|<b@�I��GL"��� C$Y>1 `���G$& ���h���!R?�0Dr�! �H;}<b@�I�FL�"��� C��>1 `���#& ���`���!{��0D�� �H'~<b@���FL�"��� C�8?1 `����#& �X�`���!���0D:�� �H�~8b@�)�EL�"��� C$�?1 `�T��#& ���`���!���0Dz�� �H�@ C��?���!���@��f `�4��c& ��q���!"��0D E�1 �H��@h@� M�"�#r� C�zD 6 `���ȡ&0 �B)���!�I"��0D�I� �Hf� p@��-N�"�%�� C$�D09 `�d�H�#@ �~Ix��!z" �0D�O$� �H��`r@�IF��G�"�(��C$2E `�ԦH�#@ ������!��" �0D�U$� �H��$<@�)]��G�"�+�� C$�E�� `���ȳ@ ��y���!R�"�~0Db]��H�@�@�ih?�"�0�C�F�� `���g' �Nq���!R-#�0Dg�� �H�8x@���N"�4�� C$�F< `���ȃ'@ �Ty���!Rn#��0D�o�� �H#�8|@�)��O�"�8�� C�6G<= `�����'@ �ty���!R�#�0D�w�� �H'�x~@����O"�>�@�����L"�? C��G3 `�䂉c&@ �x0y���!�&��0D���1�H��4f@���L"�c˜ C�wL3 `��Ic&@ �V2y���!�N&��0DB��1�Hw�8f@��4��L"�f� C$�L3 `��Ic&@ ��3y���!�&��0D��D�Hd� l@��MKT "�j2� C�ZM(5�`���I�&@ ��5���!R�&�0D��$��Hn�d�@��t�("�n��  C��M�8 `�D� F*@4 �x8y���!�'��0D��3�H�|�@�)��00�Hb�x�@� ���"�v��C$�N�Z `��� W  ��<Y���!�'�|�0Dj�dB�H��X�����MU"�|�� C$�OT `���Ʌ*@< �`?����!�'S�0D����H#�@�@�i�)>"��I ��Pa���!�(*�|0DzE��H��<�@��i>"��"�C��T�� `�$�J4 ��Ra^��!�_*ϫ0DrMEz�H�D�@�)>&V"���� C�U�X `����+ ��T�b��!R�*R�0DZU%��H��D�@��]fV"��� C$�U�Y `���J4+ ��Vab��!��*L�0D]��H��<�@�)|)V"ͯ"� C�V�X `�d�J+ ��X�j��!�+׭0D�ee��H�X�@�I��V"���� C$�V�Z `���U+ �n[�j��!�{+S�0D q�� �H/�8�@���+W"͹�� C�UW�\ `�$���+ ��]�z��!�+V�0D�y���Ht�`�@����W"��r� C��W�^ `�$���+ ��p�~��!�.د0D�����H�L�@����W"��b� C$�\�^ `�ė �+ �hs�z��!{.W�0D����H:�,�@��L�%\"�鲌 C�=]�q `�d��b.D �buY �H��,�@��\(]"��� C��]�w `���K$/ ��vy���!�.�0D:݅��H��,����|��\�"��@ ��wY���!� /��0D��% �Hi�H$@�i��d"��� C�^^�� `��΋3 �FzYd��!�K/K�0D��%��Hj�D;@�i��g"��„ C��^�p `�T� 3.D ��{a���!R/��0DJ�"��„ C�0_�t `�$�K�. �F}����!R�/��0D:���H��@�@���j_"��Œ C$�_s@`�D� 0D�� �H��H�@���)d"��2� C�d�� `�d�L�2 �ΐ�Z��!2�0DzE���H��05@�� g"�##� C��d&� `�� . �Ԓa���!�]2̸0DM�"�H��0�@�I7 `�d� . �䓉���!҈2�0D�QFz�Hf�H�@� O�^"�*� C$\e�} `�Ԯ 3.H ��a� �!R�2 @�)f&\"�,#� C��e�� `���D2 �h��N��!��2��0D�_&j�H)�\0@� �Ff"�1�� C$<f$� `��ʌ�3 �x��|��!�;3L�0D�g� �H'�0�@�i�f\�"�4Ø C��f��!�]3L�0Dm&J�H��D�@����]"�7#� C�g�z `��� �/ �Ҝ����!��3̸ 0DRu�1$�H��0C$qg�p `����/ �@��B��!��3�0D*{f:�Hx�D*@�)���e"�>s� C��g� `��� S3 �R��p��!�6��0Dj�f��H��0�@��&\"�bÌ C$rl�q `�� c.D ���a �H(�0�@��&�(]"�e� C$�l�w `����$/ �t�����!�z6�0D�Ϧ��H/�0���iG�\�"�i�@ ��a���!ҟ6��0D��F �H��L$@��^��d"�l� C$�m�� `����3 �D�ad��!��6L�0D��F��H��H;@����g"�pÄ C�n�p `��� 3.D ��a���!R(7��0Dj冁"�rÄ C�rn�t `�d�M�. �N�����!RN7��0DZ���H{�@�@�i��j_"�wÌ C$�ns@`��� 0D"� �H0�H�@�I�)d"�y3� C�So�� `���M�2 �ֽ�Z��!�7�0D�����H?�05@�i� g"�}#� C��o&� `�$� 6 �ܿa���!��7��00D2A�&�H2�0d����l"��À C$;t$� `�����6 �tљ���!R;:��0DI'��H1�Dr@�I,�n"�È C$�t��`��c6 �x�a���!z:��0D�Og��H.�Pz@�IL�o"٩#� C$Tu$� `���&: ���aH��!��:��0DRYgB�H=�L�@� n�u"��À C$�u� `�Ļ#6L ���a�� �!�: �00Da�1�H,�0`@� � m"��#� C$>v&� `�����6 ��ى���!�<;��0D"iǢ�H:�0b�ɬ�l�"ɵØ C$�v� `����d7 �zۙ���!|;��0D"q���H8�H~@�I� t"񹃉C$Zw� `��c: ��ݙP��!ҿ;��0D�y�b�Hf�0`@�I�l"��È C$�w�``�d�C6L ���a���!��; �0D�GB�H,�Hj@����m"��3� C$R|"� `�T�O$7 ������!?>��@0DBɇ!(�H4�0f@� ,l"��3� C��|&� `�$��7 ������!�~>��0Db�G�H>�`�@��N�t"��ØC$W}&� `��Ϥ: ����X��!�> �0D�ه�H`�0b���mFl�"��Ð C$�}� `��6 �x�����!��>��0D�gb�H3�Ln@�Ɍ�n"��� C$T~,� `���#6P ���a� �!�=?��0D��H.�Lv@�)�� o"��C� C$�~(� `��ۏ�7 ����@��!�?��0D��!�Hd�0�@� Ο u"��3�C$[(� `���5 �@�����!��?�|0Dj��$6���$2�(L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B��1���G�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �align&0����v#�� #�� #� #�ڍ ��8� ��9� ��9� ��:� l7���0���0���0�0�0����Y���[���\���^���_��Bi���j��m���m��x���x���z��|�����v#��#��#��#�A#�Q#��#��#�R#�R#�"R#�2R#�BR#�RR#�bR#��R#"�R#%�R#(�R#+�R#.S#1S#9CS#<SS#?cS#��S#��S#�V#�V#�"V#�2V#�BV#��V#"�V#%�V#(�V#+�V#.�V#1�V#9#W#<3W#?CW#��W#��W#��W#��W#�Z#�Z#�"Z#�rZ#"�Z#%�Z#(�Z#+�Z#.�Z#1�Z#9[#<[#?#[#�[#��[#��[#��[#��[#��[#�^#�R^#"c^#%s^#(�^#+�^#.�^#1�^#9�^#<�^#?_#�_#�_#�_#�_#��_#��_#��_#�2b#"Cb#%Sb#(cb#+sb#.�b#1�b#9�b#<�b#?�b#�bc#�rc#��c#�c#��c#��c#��c#�f#"#f#%3f#(Cf#+Sf#.cf#1sf#9�f#<�f#?�f#iCg#�ۍ �M�� p7��6v6��6w6���B������� w#u�g#w�g#yj#{j#}#j#3j#�Cj#�Sj#��j#��j#��j#i#k#k3k#mCk#oSk#qck#ssk#u�k#w�k#y�k#{�k#}n#n#�#n#�3n#�cn#�sn#��n#io#ko#m#o#o3o#qCo#sSo#uco#w�o#y�o#{�o#}�o#�o#�r#�r#�Cr#�Sr#�cr#i�r#k�r#ms#os#q#s#s3s#uCs#w�s#y�s#{�s#}�s#�s#��s#��s#�#v#�3v#�Cv3�0�@� C3 Fp�0 �1Ð� �3 K��043��� �03 P�0HA4�0� D3 U�0XA4�p� D3 Y�0hA4ð� D3 ]�0xA4��`0��0�A3 c�� `0�P�0�A3 g�� � C� �� �� � C� �� �� � C� �� �� � C� �� �� � C� �� �� � C� �� �� (� C(� �(� �(� )� C)� �)� �)� *� C*� �*� �*� +� C+� �+� �+� ,� C,� �,� �,� -� C-� �-� �-� .� C.� �.� �.� /� C/� �/� �/� 8� C8� �8� �8� 9� C9� �9� �9� :� C:� �:� �:� ;� C;� �;� �;� <� C<� �<� �<� =� C=� �=� �=� >� C>� �>� �>� ?� C?� �?� �?� H� CH� �H� �H� I� CI� �I� �I� J� CJ� �J� �J� K� CK� �K/1�AL�0�D3 3�� CM41�`�M�0�Dp3 9�� �N11ðAL�0�D@3 =�� �O71���M�0�E@3 a�� �X71�0�K�0�E3 e�� �Y41�pM�0�Ep3 i�� �Z/1ðAL�0�E3 m�� �[41���M�0�Ep3 q�� �\71�0�M�0�E�3 u�� �]11�pM�0�E@3 y�� �^71ð�K�0�E3 }�� �_41��M�0�Fp3 ��� �h41�0�M�0�Fp3 ��� �i11�pAL�0�F@3 ��� �j71ð�M�0�F�3 ��� �k11��M�0�F@3 ��� �l71�0M�0�Fp3 ���� b�h�b�h�h h�h�b�h�h�h�h�h�h�h h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�b�b�h h�b�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h���������������������������������������������������������������������������������������������������������������������������������������������������������&(7;��49�2���7�Q��H��ή�%���.�.��mnհ�����Ѝ����������� ��0��@��P��`��p�����������������Џ���������!�1�A�Q�a�q�����������ё���0�1!�21�3A�4Q�5a�6q�7��8��9��:��;��<ѓ=�>�?�P�Q!�R1�SA�TQ�Ua�Vq�W��X��Y��Z��[��\ѕ]�^�_�p�q!�r1�sA�tQ�ua�vq�w��x��y��z��{��|ї}�~�����!��1��A��Q��a��q�����������������љ�ᙞ�� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �d�}\�}������4Ma A,$� � �d�}\�}������4Ma A,T� � ��6C�A8 �}\�}`~������4M�}������4Ma A,�� � ��6C�A8 �}\�}`~������4M�}������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,D� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`~������4M�}������4Ma A,� � ��6C�A8 �}\�}`~������4M�}������4Ma A,D� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,t� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � �d�}\�}������4Ma A,4� � �d�}\�}������4Ma A,d� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,D� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,t� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,� � ��6C�A8 �}\�}`�}������4M~������4Ma A,4� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,d� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � �d�}\�}������4Ma A,4� � ��6C�A8 �}\�}`�}������4M~������4Ma A,d� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,$� � ��6C�A8 �}\�}`�}������4M~������4Ma A,T� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,T� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma Ĉ�� �G� �pC`f0��,�0K0 TD�B�@�}0�c�`�A`���4�y�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` ��kBp�p r2b` �nBp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1�~`NSٽ�$@#������ ұ��� ��$@#��������Twm���4Ս[�� 0���,6o�� v`NS����T8m���4n���4�m���4Un���4o���4����T5n���4U��AX�A��!�n���<wn���4�M��!8Meۦ~@��X��!8Me�a Ĉ�� ć� �pC`f0��,�0K0 TD�B�@�}0�c�`�A`���4�y�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �kBp�p r2b` ��kBp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1�~`NSٽ�$@#������ ұ��� ��$@#��������Twm���4Ս[�� 0���,6o�� v`NS����T8m���4n���4�m���4Un���4o���4����T5n���4U��AX�A��!�n���<wn���4�M��!8Meۦ~@��X��!8Me�a ���� ć� ˆ�� �ǬB�@�}�}�}~P����}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|��\p�@�@T� WC��5�~`NSٽ� ұ��� ����T7n���4խ���!8Mu�~0�`���4�����DF~@̀��A!8Me[�A!8M���A!Q}��A!8M�[�!8Me���4U]���!8MU�`��ܷ���Txo���4U��AX�A��A ��!�n��, n���!˂�`NS巡@3Դ���T�m���4����!�a ���� ć/ ˆ�� ��/B�@�}�}�}�}`������,>Ra ���� �G/ A�@�}�}�}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|��\p�@�@T� WC��5`NSټ� ұ��� ����T7m���4�m[��!8Mu�`��ػ� @3���!8M�߆`NS��Nd���4���!�r�F~@̀��A!8Me��A!8M�[�A!8M�[�!8Me���4U]���!8MU��~`NSպ���T5o��tD�m�`�A`��`��tD���,�m�� 5m���4�}��!�a ���� �ǫ ˆ�� ��B�@�}�}�}~P����}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|��\p�@�@T� WC��5�~`NSٽ��,�~`NSٶ� ұ��� ����T7n���4խ���!8Mu�~0�`���4�����D6~PNS�v`NSὕ��T��@3�~PHGT�~@NS��A!8M�[��!8MU׶~`NSո���T�m���4U��AX�A��A ��!�n��,�}��!˂�f`��༡@3Դ���T6a ���� �< ˆ�� �G<B�@�}�}�}�}`������,>Ra ���� ��; A�@�}�}�}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|��\p�@�@T� WC��5`NSټ� ұ��� ����T7m���4�m[��!8Mu�`��ػ� @3���!8M�߆`NS����T�n��,˭�4n���4�m���4Un���4o����A!Q}[�!8Me���4U]���!8MU��~`NSպ���T5o�`�A`��`��tD���,�m�� 5m���4�}��!�a Ĉ�� ć� ˆ�� �Ǭ�pC�f0��,�0K0 TD B�@ &~@N3X�� 0�q�u�y���,�}�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������0H�b��tD��������~0�`���4�m���4Un���4o��,�}��!8Me���4U]��!8MU��}�}V`���y���,8o�� 5m���4�m��!�b���4����!8Me�&`NSݸ���T�n���<F`NSݼ������T8n����!8M��V~@̀��A!Q}[��!8M���`NS帝���`NS�"��T� a Ĉ�� �ǫ ˆ�� ���pC�f0��,�0K0 TD B�@ &~@N3X�� 0�q�u�y���,�}�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������0H�b��tD��������~0�`���4�m���4Un���4o��,�}��!8Me���4U]��!8MU��}�}V`���y���,8o�� 5m���4�m��!�b���4����!8Me�&`NSݸ���T�n���<F`NSݼ������T8n����!8M��V~@̀��A!Q}[��!8M���`NS帝���`NS�"��T� a � ��A|�Z d�}�}�}�}0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|��\p\@�@T WC��<`NSټ� ұ��� ����T�m���4Ս[��!8Mu�v`NSݼ���Two�� �`NS����T�n���4n���4�m���4Un���4o��tD�m���4����Tum���4U�[��!8M���`NS�q�u�y�����`��๹ �0��A ý�A4CM��!8Me��~`NSٸ���Tvn���4����!�a A ��A|�R d�}�}�}�}0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �G� �w�E�9� \p\@�@��A|��\p\@�@T WC��<F`NSټ� ұ��� ����T7m���4�m��!8Muߖ`NSݹ� @3���!8M���`NS����T8n���4n���4�m��,��[�A!8M���A!8Mś�A!Q}[�!8Me���4U]���!8MU��~`NSպ���T5o���4U��AX�A��A ��!�n�0 fP�p׆~P�P�`NSٴ���T�m��,����T�a � ��A|�Z d�}�}�}�}0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|��\p\@�@T WC��<`NSټ� ұ��� ����T�m���4Ս[��!8Mu�v`NSݼ���Two�� �`NS����T�n���4n���4�m���4Un���4o��tD�m���4����Tum���4U�[��!8M���`NS�q�u�y�����`��๹ �0��A ý�A4CM��!8Me��~`NSٸ���Tvn���4����!�a A ��A|�S d�}�}�}�}0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� ć� �w�E�9� \p\@�@��A|��\p\@�@T WC��<F`NSټ� ұ��� ����T7m���4�m��!8Muߖ`NSݹ� @3���!8M���`NS����T8n���4n���4�m���4Un���4o��tD�m��,��[�!8Me���4U]���!8MU��~`NSպ���T5o���4U��AX�A��A ��!�n�0 fP�p׆~P�P�`NSٴ���T�m��,����T�a � ��A|�Z 7x`� �� ��@@� d ~0�c�`�A`��`�0 &~@N3�!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|��\p\� 7��� ������ 7��� ��@ #@�@T� WC��H&`NSټ "$@#�����" ұ��� ��$@#��������T�m���4Ս���!8Mu��0�c���4��[��!8Mu��P̓�~0�`���4^��!8M��V~@̀�A!8Me��A!Q}��A!8M���!8Me���4U]��!8MU�~PNS��`NS�q�u�y�����`���"��Tym���4U���� �"��Tyo�0 �n�� 5m��Y��!8Me��~`NSٸ���Tvn���4����!�a � ��A|�Z 7x`� �� ��@@� d ~0�c�`�A`��`�0 &~@N3�!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �Ǹ �w�E�9� \p\�����A|��\p\� 7��� ������ 7��� ��@ #@�@T� WC��H&`NSټ "$@#�����" ұ��� ��$@#��������T�m���4Ս���!8Mu��0�c���4��[��!8Mu��P̓�~0�`���4^��!8M��V~@̀�A!8Me��A!8M��A!8M���A!Q}��!8Me���4U]��!8MU��`NS����T8o�`�A`��`���4U���!�n��, �� �!8M���~0�`�0 �n�� 5m��Y��!8Me��~`NSٸ���Tvn���4����!�a ���� ć� �p1�����Q�D8 ~0�c�`�A`������T����T�}@��a ���� ć/ �p1�����Q�D8 ~0�c�`�A`������T����T�}`���a ���� �ǫ �p1�����Q�D8 ~0�c�`�A`������T����T�}@��a ���� �< �p1�����Q�D8 ~0�c�`�A`���4�n������T�}`���a bA,@��Uz�P��w@!�^p��x�pr2b` ��kBp�p r2b` �!nBp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<`NSٽ���� ұ��� ����Twm���4�}[��!8Mu�60�c���4����!8Mu��~`��ؼ� @3���!8M�Ӗ`NS����T�m��Y�4n���4�m���4Un���4o���4�yOD ��X��!8MU�~`NSպ���T8o�`�A`��ÿ8v~@HG���!8M���~`NSٴ���T�m��,����T6a bA,@��Uz�P��w@!�^p��x�pq1b` ��kBp�p q1b` �!nBp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<&`NSٽ� ұ��� ����T7m���4�]���!8Mu�v`NSݺ� �X��!8Mu��~`��ظ���Two�� �`NS����T8n��Y�4n���4�m���4Un���4o���4����T5m���4Um����D������T�n���4U��AX�A����D��/����P�s��~`NSٴ��,`NSٹ���T�a bA,@��Uz�P��w@!�^p��x�pr2b` �kBp�p r2b` ��kBp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<`NSٽ���� ұ��� ����Twm���4�}[��!8Mu�60�c���4����!8Mu��~`��ؼ� @3���!8M�Ӗ`NS����T�m��Y�4n���4�m���4Un���4o���4�yOD ��X��!8MU�~`NSպ���T8o�`�A`��ÿ8v~@HG���!8M���~`NSٴ���T�m��,����T6a bA,@��Uz�P��w@!�^p��x�pq1b` �kBp�p q1b` ��kBp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<&`NSٽ� ұ��� ����T7m���4�]���!8Mu�v`NSݺ� �X��!8Mu��~`��ظ���Two�� �`NS����T8n��Y�4n���4�m���4Un���4o���4����T5m���4Um����D������T�n���4U��AX�A����D��/����P�s��~`NSٴ��,`NSٹ���T�a ��A� ����}\�}@��a ��A� 쇙��}\�}@��a ��A� ����}\�}@��a ��A� 䇘��}\�}@��a ��A� ����}\�}@��a ��A� 쇏��}\�}@��a ��A� ����}\�}@��a ��A� 쇎��}\�}@��a ��A� ����}\�}@��a ��A� 䇍��}\�}@��a ��A� ����}\�}@��a ��A� 쇌��}\�}@��a ��A� ����}�}@��a ��A� ����} �u�,a ��A� �G���} �u�,a ��A� �Ȋ��} �u�,a ��A� �G���} �u�,a ��A� ����} �u�,a ��A� �����} �u�,a ��A� ����} �u�,a ���� �Ȉ A�@�}�}�}@��a ���� �H� A�@�}�}�}@��a ���� �� A�@�}�}�}@��a ��A� ���} �u�,a ��A� ��~��} �u�,a ���� �H~ A�@�}�}�}@��a ���� ��} A�@�}�}�}@��a ��A� �}��} �u�,a ���� ��| A�@�}�}�}@��a ���� �H| A�@�}�}�}@��a ��A� ��{��} �u�,a ��A� �{��} �u�,a ��A� ��z��} �u�,a ��A� �z��} �u�,a ��A� ��y��} �u�,a ��A� �y��} �u�,a ��A� ��x��} �u�,a ���� �Hx A�@�}�}�}@��a ��A� ��o��} �u�,a ��A� �o��} �u�,a ��A� ��n��}�}@��a ��A� �n��}�}@��a ���� ��m A�@�}�}�}@��a ���� �Hm A�@�}�}�}@��a ��A� ��l��}�}@��a ��A� �l��}�}@��a ��A� ��k��}�}@��a ��A� �k��}�}@��a ��A� ��j��}�}@��a ��A� �j��}�}@��a ��A� ��i��}�}@��a ���� �Hi A�@�}�}�}@��a ��A� ��h��}�}@��a ��A� �h��}�}@��a ��A� ��_��}�}@��a ��A� �_��}�}@��a ��A� ��^��}�}@��a ���� �H^ A�@�}�}�}@��a ���� ��] A�@�}�}�}@��a ���� �H] A�@�}�}�}@��a ���� �] B�A8�}�}�}0@�c��, a ��A� �\��}�}@��a ��A� Ȉ[��}�}@��a ��A� �[��}�}@��a ��A� ��Z��}�}@��a ��A� �Z��}�}@��a ��A� ȈY��}�}@��a ��A� �Y��}�}@��a ��A� ��X��}�}@��a ���� �HX A�@�}�}�}@��a ���� �X B�A8�}�}�}�}@��a ���� �HO A�@�}�}�}@��a ���� ��N A�@�}�}�}@��a ��A� �N��}�}@��a ��A� ��M��}�}@��a ��A� �M��}�}@��a ��A� ��L��}�}@��a ��A� �L��}�}@��a ���� �L B��@�}�}@H���!<Sa ���� ؈K B��@�}�}@H���!<Sa ��A� ��J��}�}@��a ��A� �J��}�}@��a ���� ��I A�@�}�}4�}@��a ��A� �I��}�}@��a ��A� ��H��}�}@��a ���� �HH A�@�}�}4�}@��a ��A� ��?��}�}@��a ��A� �?��}�}@��a ��A� ��>��}�}@��a ��A� �>��}�}@��a ��A� ��=��}�}@��a ��A� �=��}�}@��a ��A� ��<��}�}@��a ������ ��< A�@�}�}�}@NS��!�a � ����� ��<B�@�}�}�}@NS��!�a ���� ��; A�@�}�}�}@��a ���� ��; A�@�}�}�}@��a "D,��� �����A|Ě\`�� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa ���� ��: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� ��N A�@�}�}�}@��a ���� �8 A�@�}�}�}@��a � ����� �H8B�@�}�}�}@NS��!�a ������ �H8 A�@�}�}�}@NS��!�a ���� �G/ A�@�}�}�}@��a ���� �G/ A�@�}�}�}@��a "D,��� �����A|К\`�� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa ���� �I. A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� �HO A�@�}�}�}@��a ���� ��+ A�@�}�}�}@��a � ����� ��+B�@�}�}�}@NS��!�a ������ ��+ A�@�}�}�}@NS��!�a ���� ��* A�@�}0T�b�0 !I�}@��a ���� � * A�@�}0T�b�0 !I�}@��a ��A#�` &�4��}0T�b�0 !I�}04�a��, a ��A#�` &�4��}0T�b�0 !I�}04�a��, a ���� � ) A�@�}0T�b�0 !I�}@��a ���� ��( A�@�}0T�b�0 !I�}@��a ���� � ( A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� ,g4A�@�}0T�b�0 !I�}p�a��, a ���� ,e4A�@�}0T�b�0 !I�}p�a��, a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� B�A8�}0T�b�0 !I�}p�a��, a �ȈA� � � ����@�@ �}0�c���4�u��T~PNS�~PNS��}@��a �ȈA� ��� ����@�@ �}0�c���4�u��T~PNS�~PNS��}@��a ;J,@ �� �� ������a��pC�`0�0���� ��%�1K� 7�2F0bp p�C���#�`'?�,�,�1PAD!��@y(�p�$��A8V~`��Խ� ��A!0OM���!8̀Ӷ~`N3൝�,7m�� ���,wo���<vm���4�q�u�y���,a 9J,@ �� �� ����ܐQ�$� E��,�@#�`�#8���p�Q��,Ca#�`�#9�$�Lj�� �H-�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~`N3ؼ��� 6~@̳���!8�`�f~`��ص� ��AX�A���!�b�V~P�S�&~@��a 9J,@ �� �� ����ȐQ�$� E��,�@#�`�#3���p�Q��,Ca#�`�#4�$�Lj�� � -�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~@N3��!0�n��,�][�� 0�q�u���,�n���<un���4�͛��!8�`�&~@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#.���p�Q��,Ca#�`�#/�$�Lj�� �� -�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~@N3��!0�n��,�][�� 0�q�u���,�n���<un���4�͛�!�b���4��a 5J,@� ���,C #�`�&D�$� ���,�@#�`�'d� � F� ����~�2Kp���~�P2Kp TD!��@� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�!D�$� ���,�@#�`�"d� � F� ����~�2Kp���~�P2Kp TD!��@� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�'�C�$� ���,�@#�`�'�c� � F� �����2Kp����O2Kp TD!��@�� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�'�C�$� ���,�@#�`�'�c� � F� �����2Kp����O2Kp TD!��@�� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 7J,@ �� �� �����O1K� 7x� �����1K� 7�2F0bP |R?�,�1bP |R?�,�1PAD!��@y(�p�$��A8~0�c�`���4�u�3�~`N3Զ��� �m��,Kn���<���,����~@�����!�R�a 7J,@ �� �� �����O1K� 7x� �����1K� 7�2F0bP |?�,�1bP |?�,�1PAD!��@y(�p�$��A8~0�c�`���4�u�3�~`N3Զ��� �m��,Kn���<���,����~@�����!�R�a � �X�@�}�}@0�@��!8Ma � �T�@�}�}@0�@��!8Ma � �`�@�}�}@0�@��!8Ma ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a �ȈA� �I���}@NS��D�`��, a �ȈA� �����}@NS��D�`��, a �ȈA� �I�� ����@�@ �}0�c���4����T����T�qOD �}@��a �ȈA� ���� ����@�@ �}0�c���4����T����T�qOD �}@��a ��A� � ���}0<Sa ��A� �����}0<Sa ��A� � ���}0<Sa ��A� �����}0<Sa ���d�@�}<a ���d�@�}<a ���d�@�}<a ���d�@�}<a ���p�@�}pD� �a ���p�@�}pD� �a ���p�@�}pD� �a ���p�@�}pD� �a ���� ̇� B�A8�}`8E!�q )�}@�Da ��A� ����} a ���� �J���}0�d�2a ��A� ����}@0��a �pCPa0bp ��6�� Ap�A8�}@<1���a A,@ � ������ ���B0���}@<1���a �pCPa0bp ��6C� Ap�A8�}@<1���a A,@� ������ ���B0���}@<1���a A, 4�\W ��8�C:�C9�C8��:��8́���} #D�` a &A,@��3��<��9���9��������A���������������6!P�\Ď��| d �}PX�0F~ 8�� ұX��!EB 4�q ��� Qa 'A,@��3��<��9���9��������A���������������6!P�\Ď��| d �}PX�0&~PHT�#�}pH�P a�CDF~@8����A!��a #A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@�}PX�0&~0H�b�CD�}P �2~0HTa $A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ �}PX�0~PHT�#�}0T@d��@,`��t,>a %A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d �}PX�0F~ 8�� ұ��P�u�L�� a 'A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d �}PX�0&~PHT�#�}0T@d��@,`�����ұ�a &A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d �}PX�0F~ 8�� ұ��P�u �& )&~0HTa 'A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d �}PX�0&~PHT�#�}0T@d��4� H��N�#6~PH��#a &A,@�A5��<��9���9��������A���������������6!P�\Ď��� d �}PX�0F~ 8�� ұX��!EB 4�q ��� Qa #A,@Ts�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@�}PX�0&~0H�b�CD�}P �2~0HTa %A,@�A5�<��9����;܃;��8́��������� }`l`l l 6!P�\Ď��� d �}PX�0F~ 8�� ұ��P�u�L�� a &A,@�A5�<��9����9�C>��8́��������� }`l`l l 6!P�\Ď��� d �}PX�0F~ 8�� ұ��P�u �& )&~0HTa UA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�}pH�P a����m��t,>b���HLDH�2Ֆ~@8�����!Q��Ԇ~PH��#V~��L�}0T@a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d��D>R���N�#>b��t,>�#V~��L>a OA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~PHT�#�~`H��#��(��D�D-Sm��D>R��A!���AHLDH�2��P�u�La QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`��D>R���ұ�����HLDH�2�a TA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�~P8���f~��L��ұ��m������Hm��t,>b� 1!Q�d�CD�}P �2a WA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�~`8����� �H�#�~pH��#>b� 1!Q��#a UA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�~P8����~`H��#��(��D�D-Sm������Hm��t,>b� 1!Q�d�CD�}�,@C���a XA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}�,@C���X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a WA,(@��3��<��9���9��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m�� %��~�HT�#>R�"����m� 1!Q�T���!Q�����ұ���X�AHLDH�2��P��N�#>a QA,'@=s�A��:�;�A=��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;�1�� B`�����| ����@~p#G�`0��#F�`�'K@d�}PX�0�~�HT�#>R��"����m� 1!Q�T���!Q�����$��D�D-�q Y�A1����!���a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m��D>�#�� ұ����f~��L�����X�AHLDH�2��!����q Y�A1�X���D>�#a WA,(@��3�<��9����9�C>��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m��D>�#�� ұ����f~��L�������!�����$��D�D-�q Y�� a�b�����a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d��D>R���N�#>b��t,>�#V~��L>a [A,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����uR$�@C�A"�����X��D>�#>b� 1!Q��#>b�CDv~�HT�#>�#�~�8���>�#�~�H��#�����8��D�D-S�#>a QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`��D>R���ұ�����HLDH�2�a TA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0�~�HT�#�����$ұ������4��D�D-����q Y�A1���A"Q��������"���>�#V~��L���a WA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�~`8����� �H�#�~pH��#>b� 1!Q��#a ZA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����� N�#>�#�~�H��#>�#V~��L>�#�}0T@d��@,`��D>�#>b�����#>b��t,>b������HLDH�2�>�#a XA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}�,@C���X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a [A,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����� N�#>�#�~�H��#>�#V~��L>�#�}0T@d��4� H��$������$N�#�����(ұ���#>b� 1!Q�T���a A,@�& !P�\Î$����L���&@�@ �}PX�0F~ 8�� ұ���!EB 4�u ��� Q�q )a A,@�& !P�\Î$����L���&@�@ �}PX�0&~PHT�#�}pH�P a�����ұ��u ���a A,@�& !P�܈A� �J� �a� �A8 �}PX�06~0H�b�CD�}P �2�}@0����� Qa A,@�& !P�܈A� �J� �a� �A8 �}PX�0&~PHT�#6~PH��#�}0T@d��@,`�H a A,@�& !P�\Î$����L���&@�@ �}PX�0F~ 8�� ұX��P�y�L�� ���a A,@�& !P�\Î$����L���&@�@ �}PX�0&~PHT�#F~@8����A!��X��P�y�L�q )a A,@�O6!P\Ď$�����B$H0�� �}PX�0V~ 8�� ұX��P�q )�}�,@C������ Qa A,@�O6!P\Ď$�����B$H0�� �}PX�06~PHT�#V~@8���A!��X��P�q )�}�,@C���a #A,@�& !P�\Î�A~� 2b� ��2J�0�#�`�+'d�}PX�0F~ 8�� ұ���!EB 4���,�m�CD&~0HT`�H���,a A,@�& !P�܈A� ��# �`p+.��!�&��A� ��� �}PX�0v~`��Է� ұX��P�y�L�q )&~0HT`��, a "A,@�& !P�\Î�A~� 2b� ��2 �0�#�`�+'d�}PX�0F~ 8�� ұ��!�R��}0T@d��@,`�H�� X�!�a #A,@�O6!P\Ď�A~�L2b� �3K$�hB�����L�A8�}PX�0V~ 8�� ұX��!�R��}0T@d�H�y �& )6~0HT`��, a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0v~PHT�#�~P8����~`H��#��(��D�D-Sm��t,>b�H�yR$�@CX��D>b� 1!Q�d��D>R[��Pa MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d�H��N�#>b��t,>�#V~��L>b��D>R�a FA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~PHT�#�~`H��#��(��D�D-Sm��t,>b�H���Hm� 1!Q�d�CD�}P �2a HA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`�H��,��D�D-����!����� �H�#a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~PHT�#�~`H��#��(��D�D-Sm����m��t,>b�H���Hm�����$��D�D-�u ��A1�a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�}@0��X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a JA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~PHT�#�~P8����~`H��#��(��D�D-Sm��t,>b�H�y �& )�~`HT�#��$��D�D-��N�#�}0T@a MA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}@0����� a�b�����X��!�����,��D�D-��X�"Q���>a MA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�'O`d�}PX�0f~��L��������b���������D>�#�yR$�@C�"Q���Hm��t,>�#��$��D�D-�u ��!���a GA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ~�E�@�}PX�0f~��L��������b��D>�#�� ұ����V~��L�}0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�'O`d�}PX�0f~��L��������b���������D>�#�� �����~�H��#>b[�AHLDH�2Y��P�y�L��ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<�vsy��`n v@`�dl@q�ld {p�<�A��#E�`�;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ~�F�@�}PX�0v~��L��������b��4� H��N�#>b�������~�HT�#>R��"����m� 1!Q�d�CD�~pH��#>a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d�H��N�#>b��t,>�#V~��L>b��D>R�a PA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�~�HT�#����yR$�@C�A"�����X�AHLDH�2���X��D>�#>b�CD�}@0����A"Q�������A�D>r���X��"���>�#f~��L���a HA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`�H��ұ���X��HLDH�2��� �H�#a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0�~�HT�#�����$ұ������4��D�D-����u ��A1����b��D>�#>b��t,>b������HLDH�2�>�#a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�}@0��X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a PA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0�~�HT�#�����$ұ������4��D�D-����� N�#>�#�}0T@d��@,`�H��$������$N�#�����(ұ���#>b� 1!Q�T���a MA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}@0����� a�b�����X��!�����,��D�D-��X�"Q���>a PA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~�HT�#�����$ұ������4��D�D-����� N�#>�#�}0T@d�H�y �& )�~�HT�#>�#�~�8���>�#�~�H��#�����8��D�D-S�#>a A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ����!8MU�&~@NS�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L�q ����HLDH�2�6~��L����T5n���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4M6~��L��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������0n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������0n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������pn0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������pnPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������pn0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������pn0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������pnPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������pnPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������pn`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������pn`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������0n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������0n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,T� q7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a OA,� }7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d��_�_�H#�d���4�m��A���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4M6~��L��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a OA,D� �7W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L�q ����HLDH�2�F~@NS���HLDH�2�V~`NSո���T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a 2A,� �7�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� �7�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,D� �7�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,T� �7�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#E�` 3��A8�}0<Sa A,d�\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#E�`P3��A8�}0<Sa 2A,4� �7�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� 8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� 8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,T� q7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a OA,� }7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a OA,D� �7W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!�~������4M~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� �7�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,D� �7�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,T� �7�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#E�` 3��A8�}0<Sa A,d�\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#E�`P3��A8�}0<Sa 2A,4� �7�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� 8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� 8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��} �q�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��} �q�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��} �q�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��} �q�c��t �q #2"�\�.�E�^�.���`�.���b�/86��d�/XF�f�0x� �h�0�� �j�0�6�l�1�F�n�1���p�1�)�r�287-�t�2XG8�v�3x�:�x�3��=�z�3�7I�|�4�GL�~�4�7O���5@Z���58�\���5X�_���6x0k���6�@n���6�0y���7��|���8�����98`����:XP����:x௃��;������;��ȃ��<�0؃��=�0郠�?�����?8����@X����Ax���B��.���C��?���D��X���E��[���E�k���G8 ����Hh ����H������I� ����I(�����Ih ����I������I� ����J�����JH ����J������J�0����JЯ���KHP����K����K������K����KH�����L�Ʉ��L��ʄ��L( ̄��LH(�̈́��L�(0τ��M�(�؄��M)@ڄ��MH)�ۄ��M�)@݄��M�)�ބ��M*P脢�NH*�鄦�N�*p넪�N�*0턮�N+��NH+0����O�+�����O�+0����O,�����OH,�����O�,���P�,� ���P- ���PH-� ���P�-P���P�-����Q.`���QH.����Q�.`���Q�.����Q/����R(/`)���Rh/�-���S�/`:���S�/<���S�/�=���S�/@?���T(8 I���TH8�J���T�8@O���U�8�[���U�8`]���U�8_���U9�h���V89�j���Vx9`l���V�9�n���V�9`x���W:@z���WX: |���W�:~���W�:����X;�����XX;�����X�;�����X�;�����Y<�����YX<`����Z�<ૅ��Z�=@����[8> ʅ��\�>م��]x? ���^�?����^�?P���^H0텂�^HH�_�H�����_�H�����_I�����_HIp����_�I0 ���`�I� ���`J� ���`(J ���`HJ0���`hJp���a�J����a�J@���aK����a8K����aXK(���bxK�+���b�K�8���c�KP=���c�K`J���d�KpO���eL0\���e8L l���gXL�~���hxL`����i�L`����k�L�����l�LPچ��m�L����oM����p8Mp���rXM�.���s�M`>���t�M�I���t�M@M���t�M�X���u(N]���uHNpi���vhN�x���w�N�����x�NP����z�N����{�N྇��|OP؇��}(O0���~HO������hO� �����O���͂�O�.�����O�9�����O`=����X�H����(X�X����HX�_����hXo�����X�{��؇�X �����X������XЛ����Y����(Y0�����HY������hY�������Yp������Y������YP������Y�����Z�����(Z� ��ݐHZ��БhZ������Z*�����Z�.�����Z�>�����Z�M����[ ]���([�h����H[�o����h[`|����[������[@���Θ�[�������[������\������(\�����H\������h\�����\������\����ޞ�\����џ�\����]p ���(]���ڡH]P����h]�*��Ȣ�]0.�����]�9��ˣ�]�I��Ȥ�]�X����^�_����(^�l���H^�o����h^�|�����^�������^Л�����^���˪�^`�����_������(_p���ŬH_P�����h_0������_�������_`������_������_� ����h��α(h�����Hh,����hhP<�����hL�����h�[��ٵ�hp_�����h o����i@|���(i �����Hi���ݸhi�������i0������i������i�������i�����j������(j������Hj �����hj�������j� �����j@�����j�(�����j0.����k@:����(kP>����HkPJ����hk�Y�����k�h�����k0o�����k |�����k �����l@�����(l������Hl0�����hl������l������l�������lp������l������m������(m������Hm�����hm� �����mp�����m`�����m`+�����m�8����n�?����(npN����Hn ]����hn i�����n�o�����n�|�����n�������nЌ����oИ����(oP�����Ho�����ho�������o�������o�������o�������o�����x������(x`����Hx` ����hx�����x������x,�����x8�����x<����y�K����(y@Z����Hy�h����hy�m�����y�y�����y�����y@������y�����z������(z������HzP�����hz@������z`�] ����threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_50_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z6__shfliii_Z6__shfljii_Z9__shfl_upiji_Z9__shfl_upjji_Z11__shfl_downiji_Z11__shfl_downjji_Z10__shfl_xoriii_Z10__shfl_xorjii_Z6__shflfii_Z9__shfl_upfji_Z11__shfl_downfji_Z10__shfl_xorfii_Z6__shflxii_Z6__shflyii_Z9__shfl_upxji_Z9__shfl_upyji_Z11__shfl_downxji_Z11__shfl_downyji_Z10__shfl_xorxii_Z10__shfl_xoryii_Z6__shfldii_Z9__shfl_updji_Z11__shfl_downdji_Z10__shfl_xordii_Z6__shfllii_Z6__shflmii_Z9__shfl_uplji_Z9__shfl_upmji_Z11__shfl_downlji_Z11__shfl_downmji_Z10__shfl_xorlii_Z10__shfl_xormii_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! �y !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L&� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��U( ���EDT ���*�Re�H)#�E!�-��B�� �S�0��� A9@S���L@W��~ʪ�@[�� ��@�WE0� �T@c�E��,2��(BhQZG�X��"?���[�)RE�"�Ȓ"XB�E�!��/����E{E@�/��(�Q`H��F�ЈateR�L#ň�"��5F�����"��IF��ʨ2��\F�Q2EHF3ڌ�):��ge���2\Q$Z�(�"� W(�V�+�*�P+�k�A��� �� ��pE\��ke��.K�2\qW($[��K�� W��V�+��p+��B��� �!��pEb��oe��1R�2\�X5$\�H�"� WPFW�+.��+��%Cʕ���!���`�(b�*�E���� ]W�ȡ�@Z��!���Z��E��;��E��:�ȼ"tw�g (�zz�zE��/j��F���(�"�g�W�����ct_�{��3�/�a�ˈ?C���/��?��?#�CN�,�@� �� ,�k���­;� �qE\w�q��`!�� ��b\qAX�+�2���W�Da1� �,,���qaX�+ ��;� qEb@� ���B\�����_~!�q�f����/Db!��r�D,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8no�P��� @������av@�1�7 � �P�av@h� �Aw�B"��� ��F.�� @���\0��`�2�`y7��|r�8�n ���q��@;����ແv@� ��w�R-��� ��].�� @�ڿ\0��`D�A.G� @�j� �C� ��h� �1z�~5�� ��v@x�q��@;�x�8�n �P;���7���Y@��`��- �� @��@��� ��}� �qz�FPp�@��v@�(��q��@;��\�8To �P{ �`�7�hOW0��`���+G� @��]���� ���� ��z��Yp〽�v@�-��q��@;�\�8do �P� �`�7�h�W0��`���+G� @�:����� "���-@ ��r� �H�9xC��� `����%0D��!��"��Y@ �`u�, �H�:`C$&��!R��@� n�� `�t�C@ ��w����!��0D��2 �Hq<hf@�i� �"��0h@���K �"����C���8 `���D@ �v{����!|�0DR��� �Ha>px@��χ+�"����C$x�Q `�T�6 @ �~~�J��!��\)0D���: �H�?p�@���  `����C�Y$�`�"�$��C��$�W `���� @ �ȓ�f��!R�V,0D�Q� �HoJ�@��N �"�)��C$Y%�^``�d��� @ �J�x��!��8P0D"[2 �HtKD����t��@"�.!� C$�%$y@`����T, �Z����!R?P0Drc"� �HLH"��)� �$@"�31� C${&��@`����, �z�hb��!�ZM0D�k¹ �H�M@:@�鶉�'"�7�C��& � `�t�T �r�x���!��Z0D�sr �H�NDq@�)׉�."�;!�C$~'$� `����� �ž�B��!R�i0D}B: �H�OL�@�����5"�?A�C$,�� `�$�Ee �r��!+o0D��� �H�X\�@��%��<"�e!�C$�,&� `�T�� �r�����!RzC|0Db�B��H�Y@�@��E�!>�"�h!�C�1-�� `����3 ���`���!R�H|0D��™�H�Z0�@�i] g>"�k��C��-�� `�Բ�3 �v�����!��|0D��"��H�[L�@�i| g>"�o�C�.�� `���4 �~�p���!R�|0D��™�H�\@�@�i��i>"�sQ�C��.�� `�d�E5 �ֺ`���!�]L}0D킩�H�]0�@�i� �>"�w��C��.�� `�T�s �f�X���!��J~0DB�b��Hs^$�@��ϋe?"�z��C�X/�� `���E�@ �̽`���!���~0D�����H&_$�@���$?"�|��C$�/�� `���ű@ ��H���!R��~0D �"��H�_ �@�I��d?"�~q�C$�/�� `����@ ��8���!��E0D�����H&h�@����?�"ɠq�C�4� `�ԃ� ���@���!R�0D�C#��H{h�@�) �?"��Q�C$W4� `�d�1"@ �t�@J��!�8J�0DbG9�H�h$'@����?"��A�C$�4�� `����@ �n�HF��!Xň0D*KCQ�Hoi*@��.��?"��A�C��4 `�����"@ �`�PJ��!�nF�0DO��H�i�@��=��?"ѧA�C$�4�� `��F�@ �J�@���!R��0D�Q���H9j�@��G �?"��Q�C$55�� `�$�F�@ ���PF��!R�ƈ0D:U���H�j�@�IV �?"�Q�C�_5�� `�t�F�@ ���H���!R�F~0D�Wc)�H&k%@��e �E"嬁�C��5�� `���F�@ ���H���!���0D�[��H�k�@�Iu��?"ͮa�C��5�� `�$���@ ���H���!R��0D�_#��H l�@�Ʉ eD"��a�C$6�� `���F�@ ���8���!��0Drc��Hvl�@�i� �?"��q�C$V6�� `�d���@ �z�hF��!�:Ɉ0D�g��H!m(#@�i� gD"崡�C��6 `���#@ ���H���!h�0D2mC��H�m2@�鶍EF"����C$�6�� `�4߆�@ ���@���!R��0D2q#��H/n2@��� EF"��q�C$37�� `�4��@ ���HF��!��ň0DZu#��H�n4@� ׍dD"��Q�C$s7� `���F1"@ ���H���!R��0Dy#��H,o�@�I��?"��a�C��7�� `�����@ ���H���!R��0D�{��H�o$6@� � �F"��q�C��7�� `�4���@ ���0���!��0D����H&x 8@�)�?"��1�C$<�� `�����@ �v�8p��!��0D*�C��Hwx8�@���?"����C�r<�� `����@ ���X���!RH�0DJ����H8y,�@�i,��?"���C$�<�� `�����@ �J�ht��!�l�0D�ͣ��H�y�@�i=$>"���C��<0 `�4�G&@ �P�@���!��0D���H>z `@��LL"�遀 C$;=0 `��& �L�@F��!���0D�Ճ� �H�z >@�I\DG"��A�C$w=�� `�d� ���@���!���0DZ��H3{`@�)gL"�큀 C��=0 `��& ���@���!R��0DJ��H�{ <@�)w�G�"���C��= `�Ծ�#& ���`���! ��0D�� �Hc|<b@�I��GL"��� C$Y>1 `���G$& ���h���!R?�0Dr�! �H;}<b@�I�FL�"��� C��>1 `���#& ���`���!{��0D�� �H'~<b@���FL�"��� C�8?1 `����#& �X�`���!���0D:�� �H�~8b@�)�EL�"��� C$�?1 `�T��#& ���`���!���0Dz�� �H�@ C��?���!���@��f `�4��c& ��q���!"��0D E�1 �H��@h@� M�"�#r� C�zD 6 `���ȡ&0 �B)���!�I"��0D�I� �Hf� p@��-N�"�%�� C$�D09 `�d�H�#@ �~Ix��!z" �0D�O$� �H��`r@�IF��G�"�(��C$2E `�ԦH�#@ ������!��" �0D�U$� �H��$<@�)]��G�"�+�� C$�E�� `���ȳ@ ��y���!R�"�~0Db]��H�@�@�ih?�"�0�C�F�� `���g' �Nq���!R-#�0Dg�� �H�8x@���N"�4�� C$�F< `���ȃ'@ �Ty���!Rn#��0D�o�� �H#�8|@�)��O�"�8�� C�6G<= `�����'@ �ty���!R�#�0D�w�� �H'�x~@����O"�>�@�����L"�? C��G3 `�䂉c&@ �x0y���!�&��0D���1�H��4f@���L"�c˜ C�wL3 `��Ic&@ �V2y���!�N&��0DB��1�Hw�8f@��4��L"�f� C$�L3 `��Ic&@ ��3y���!�&��0D��D�Hd� l@��MKT "�j2� C�ZM(5�`���I�&@ ��5���!R�&�0D��$��Hn�d�@��t�("�n��  C��M�8 `�D� F*@4 �x8y���!�'��0D��3�H�|�@�)��00�Hb�x�@� ���"�v��C$�N�Z `��� W  ��<Y���!�'�|�0Dj�dB�H��X�����MU"�|�� C$�OT `���Ʌ*@< �`?����!�'S�0D����H#�@�@�i�)>"��I ��Pa���!�(*�|0DzE��H��<�@��i>"��"�C��T�� `�$�J4 ��Ra^��!�_*ϫ0DrMEz�H�D�@�)>&V"���� C�U�X `����+ ��T�b��!R�*R�0DZU%��H��D�@��]fV"��� C$�U�Y `���J4+ ��Vab��!��*L�0D]��H��<�@�)|)V"ͯ"� C�V�X `�d�J+ ��X�j��!�+׭0D�ee��H�X�@�I��V"���� C$�V�Z `���U+ �n[�j��!�{+S�0D q�� �H/�8�@���+W"͹�� C�UW�\ `�$���+ ��]�z��!�+V�0D�y���Ht�`�@����W"��r� C��W�^ `�$���+ ��p�~��!�.د0D�����H�L�@����W"��b� C$�\�^ `�ė �+ �hs�z��!{.W�0D����H:�,�@��L�%\"�鲌 C�=]�q `�d��b.D �buY �H��,�@��\(]"��� C��]�w `���K$/ ��vy���!�.�0D:݅��H��,����|��\�"��@ ��wY���!� /��0D��% �Hi�H$@�i��d"��� C�^^�� `��΋3 �FzYd��!�K/K�0D��%��Hj�D;@�i��g"��„ C��^�p `�T� 3.D ��{a���!R/��0DJ�"��„ C�0_�t `�$�K�. �F}����!R�/��0D:���H��@�@���j_"��Œ C$�_s@`�D� 0D�� �H��H�@���)d"��2� C�d�� `�d�L�2 �ΐ�Z��!2�0DzE���H��05@�� g"�##� C��d&� `�� . �Ԓa���!�]2̸0DM�"�H��0�@�I7 `�d� . �䓉���!҈2�0D�QFz�Hf�H�@� O�^"�*� C$\e�} `�Ԯ 3.H ��a� �!R�2 @�)f&\"�,#� C��e�� `���D2 �h��N��!��2��0D�_&j�H)�\0@� �Ff"�1�� C$<f$� `��ʌ�3 �x��|��!�;3L�0D�g� �H'�0�@�i�f\�"�4Ø C��f��!�]3L�0Dm&J�H��D�@����]"�7#� C�g�z `��� �/ �Ҝ����!��3̸ 0DRu�1$�H��0C$qg�p `����/ �@��B��!��3�0D*{f:�Hx�D*@�)���e"�>s� C��g� `��� S3 �R��p��!�6��0Dj�f��H��0�@��&\"�bÌ C$rl�q `�� c.D ���a �H(�0�@��&�(]"�e� C$�l�w `����$/ �t�����!�z6�0D�Ϧ��H/�0���iG�\�"�i�@ ��a���!ҟ6��0D��F �H��L$@��^��d"�l� C$�m�� `����3 �D�ad��!��6L�0D��F��H��H;@����g"�pÄ C�n�p `��� 3.D ��a���!R(7��0Dj冁"�rÄ C�rn�t `�d�M�. �N�����!RN7��0DZ���H{�@�@�i��j_"�wÌ C$�ns@`��� 0D"� �H0�H�@�I�)d"�y3� C�So�� `���M�2 �ֽ�Z��!�7�0D�����H?�05@�i� g"�}#� C��o&� `�$� 6 �ܿa���!��7��00D2A�&�H2�0d����l"��À C$;t$� `�����6 �tљ���!R;:��0DI'��H1�Dr@�I,�n"�È C$�t��`��c6 �x�a���!z:��0D�Og��H.�Pz@�IL�o"٩#� C$Tu$� `���&: ���aH��!��:��0DRYgB�H=�L�@� n�u"��À C$�u� `�Ļ#6L ���a�� �!�: �00Da�1�H,�0`@� � m"��#� C$>v&� `�����6 ��ى���!�<;��0D"iǢ�H:�0b�ɬ�l�"ɵØ C$�v� `����d7 �zۙ���!|;��0D"q���H8�H~@�I� t"񹃉C$Zw� `��c: ��ݙP��!ҿ;��0D�y�b�Hf�0`@�I�l"��È C$�w�``�d�C6L ���a���!��; �0D�GB�H,�Hj@����m"��3� C$R|"� `�T�O$7 ������!?>��@0DBɇ!(�H4�0f@� ,l"��3� C��|&� `�$��7 ������!�~>��0Db�G�H>�`�@��N�t"��ØC$W}&� `��Ϥ: ����X��!�> �0D�ه�H`�0b���mFl�"��Ð C$�}� `��6 �x�����!��>��0D�gb�H3�Ln@�Ɍ�n"��� C$T~,� `���#6P ���a� �!�=?��0D��H.�Lv@�)�� o"��C� C$�~(� `��ۏ�7 ����@��!�?��0D��!�Hd�0�@� Ο u"��3�C$[(� `���5 �@�����!��?�|0Dj��$6���$2�(L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B��1���G�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �align&0����v#�� #�� #� #�ڍ ��8� ��9� ��9� ��:� l7���0���0���0�0�0����Y���[���\���^���_��Bi���j��m���m��x���x���z��|�����v#��#��#��#�A#�Q#��#��#�R#�R#�"R#�2R#�BR#�RR#�bR#��R#"�R#%�R#(�R#+�R#.S#1S#9CS#<SS#?cS#��S#��S#�V#�V#�"V#�2V#�BV#��V#"�V#%�V#(�V#+�V#.�V#1�V#9#W#<3W#?CW#��W#��W#��W#��W#�Z#�Z#�"Z#�rZ#"�Z#%�Z#(�Z#+�Z#.�Z#1�Z#9[#<[#?#[#�[#��[#��[#��[#��[#��[#�^#�R^#"c^#%s^#(�^#+�^#.�^#1�^#9�^#<�^#?_#�_#�_#�_#�_#��_#��_#��_#�2b#"Cb#%Sb#(cb#+sb#.�b#1�b#9�b#<�b#?�b#�bc#�rc#��c#�c#��c#��c#��c#�f#"#f#%3f#(Cf#+Sf#.cf#1sf#9�f#<�f#?�f#iCg#�ۍ �M�� p7��6v6��6w6���B������� w#u�g#w�g#yj#{j#}#j#3j#�Cj#�Sj#��j#��j#��j#i#k#k3k#mCk#oSk#qck#ssk#u�k#w�k#y�k#{�k#}n#n#�#n#�3n#�cn#�sn#��n#io#ko#m#o#o3o#qCo#sSo#uco#w�o#y�o#{�o#}�o#�o#�r#�r#�Cr#�Sr#�cr#i�r#k�r#ms#os#q#s#s3s#uCs#w�s#y�s#{�s#}�s#�s#��s#��s#�#v#�3v#�Cv3�0�@� C3 Fp�0 �1Ð� �3 K��043��� �03 P�0HA4�0� D3 U�0XA4�p� D3 Y�0hA4ð� D3 ]�0xA4��`0��0�A3 c�� `0�P�0�A3 g�� � C� �� �� � C� �� �� � C� �� �� � C� �� �� � C� �� �� � C� �� �� (� C(� �(� �(� )� C)� �)� �)� *� C*� �*� �*� +� C+� �+� �+� ,� C,� �,� �,� -� C-� �-� �-� .� C.� �.� �.� /� C/� �/� �/� 8� C8� �8� �8� 9� C9� �9� �9� :� C:� �:� �:� ;� C;� �;� �;� <� C<� �<� �<� =� C=� �=� �=� >� C>� �>� �>� ?� C?� �?� �?� H� CH� �H� �H� I� CI� �I� �I� J� CJ� �J� �J� K� CK� �K/1�AL�0�D3 3�� CM41�`�M�0�Dp3 9�� �N11ðAL�0�D@3 =�� �O71���M�0�E@3 a�� �X71�0�K�0�E3 e�� �Y41�pM�0�Ep3 i�� �Z/1ðAL�0�E3 m�� �[41���M�0�Ep3 q�� �\71�0�M�0�E�3 u�� �]11�pM�0�E@3 y�� �^71ð�K�0�E3 }�� �_41��M�0�Fp3 ��� �h41�0�M�0�Fp3 ��� �i11�pAL�0�F@3 ��� �j71ð�M�0�F�3 ��� �k11��M�0�F@3 ��� �l71�0M�0�Fp3 ���� b�h�b�h�h h�h�b�h�h�h�h�h�h�h h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�b�b�h h�b�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h���������������������������������������������������������������������������������������������������������������������������������������������������������&(7;��49�2���7�Q��H��ή�%���.�.��mnհ�����Ѝ����������� ��0��@��P��`��p�����������������Џ���������!�1�A�Q�a�q�����������ё���0�1!�21�3A�4Q�5a�6q�7��8��9��:��;��<ѓ=�>�?�P�Q!�R1�SA�TQ�Ua�Vq�W��X��Y��Z��[��\ѕ]�^�_�p�q!�r1�sA�tQ�ua�vq�w��x��y��z��{��|ї}�~�����!��1��A��Q��a��q�����������������љ�ᙞ�� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �d�}\�}������4Ma A,$� � �d�}\�}������4Ma A,T� � ��6C�A8 �}\�}`~������4M�}������4Ma A,�� � ��6C�A8 �}\�}`~������4M�}������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,D� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`~������4M�}������4Ma A,� � ��6C�A8 �}\�}`~������4M�}������4Ma A,D� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,t� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � �d�}\�}������4Ma A,4� � �d�}\�}������4Ma A,d� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,D� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,t� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,� � ��6C�A8 �}\�}`�}������4M~������4Ma A,4� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,d� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � �d�}\�}������4Ma A,4� � ��6C�A8 �}\�}`�}������4M~������4Ma A,d� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,$� � ��6C�A8 �}\�}`�}������4M~������4Ma A,T� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,T� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma Ĉ�� �G� �pC`f0��,�0K0 TD�B�@�}0�c�`�A`���4�y�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` ��kBp�p r2b` �nBp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1�~`NSٽ�$@#������ ұ��� ��$@#��������Twm���4Ս[�� 0���,6o�� v`NS����T8m���4n���4�m���4Un���4o���4����T5n���4U��AX�A��!�n���<wn���4�M��!8Meۦ~@��X��!8Me�a Ĉ�� ć� �pC`f0��,�0K0 TD�B�@�}0�c�`�A`���4�y�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �kBp�p r2b` ��kBp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1�~`NSٽ�$@#������ ұ��� ��$@#��������Twm���4Ս[�� 0���,6o�� v`NS����T8m���4n���4�m���4Un���4o���4����T5n���4U��AX�A��!�n���<wn���4�M��!8Meۦ~@��X��!8Me�a ���� ć� ˆ�� �ǬB�@�}�}�}~P����}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|��\p�@�@T� WC��5�~`NSٽ� ұ��� ����T7n���4խ���!8Mu�~0�`���4�����DF~@̀��A!8Me[�A!8M���A!Q}��A!8M�[�!8Me���4U]���!8MU�`��ܷ���Txo���4U��AX�A��A ��!�n��, n���!˂�`NS巡@3Դ���T�m���4����!�a ���� ć/ ˆ�� ��/B�@�}�}�}�}`������,>Ra ���� �G/ A�@�}�}�}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|��\p�@�@T� WC��5`NSټ� ұ��� ����T7m���4�m[��!8Mu�`��ػ� @3���!8M�߆`NS��Nd���4���!�r�F~@̀��A!8Me��A!8M�[�A!8M�[�!8Me���4U]���!8MU��~`NSպ���T5o��tD�m�`�A`��`��tD���,�m�� 5m���4�}��!�a ���� �ǫ ˆ�� ��B�@�}�}�}~P����}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|��\p�@�@T� WC��5�~`NSٽ��,�~`NSٶ� ұ��� ����T7n���4խ���!8Mu�~0�`���4�����D6~PNS�v`NSὕ��T��@3�~PHGT�~@NS��A!8M�[��!8MU׶~`NSո���T�m���4U��AX�A��A ��!�n��,�}��!˂�f`��༡@3Դ���T6a ���� �< ˆ�� �G<B�@�}�}�}�}`������,>Ra ���� ��; A�@�}�}�}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|��\p�@�@T� WC��5`NSټ� ұ��� ����T7m���4�m[��!8Mu�`��ػ� @3���!8M�߆`NS����T�n��,˭�4n���4�m���4Un���4o����A!Q}[�!8Me���4U]���!8MU��~`NSպ���T5o�`�A`��`��tD���,�m�� 5m���4�}��!�a Ĉ�� ć� ˆ�� �Ǭ�pC�f0��,�0K0 TD B�@ &~@N3X�� 0�q�u�y���,�}�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������0H�b��tD��������~0�`���4�m���4Un���4o��,�}��!8Me���4U]��!8MU��}�}V`���y���,8o�� 5m���4�m��!�b���4����!8Me�&`NSݸ���T�n���<F`NSݼ������T8n����!8M��V~@̀��A!Q}[��!8M���`NS帝���`NS�"��T� a Ĉ�� �ǫ ˆ�� ���pC�f0��,�0K0 TD B�@ &~@N3X�� 0�q�u�y���,�}�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������0H�b��tD��������~0�`���4�m���4Un���4o��,�}��!8Me���4U]��!8MU��}�}V`���y���,8o�� 5m���4�m��!�b���4����!8Me�&`NSݸ���T�n���<F`NSݼ������T8n����!8M��V~@̀��A!Q}[��!8M���`NS帝���`NS�"��T� a � ��A|�Z d�}�}�}�}0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|��\p\@�@T WC��<`NSټ� ұ��� ����T�m���4Ս[��!8Mu�v`NSݼ���Two�� �`NS����T�n���4n���4�m���4Un���4o��tD�m���4����Tum���4U�[��!8M���`NS�q�u�y�����`��๹ �0��A ý�A4CM��!8Me��~`NSٸ���Tvn���4����!�a A ��A|�R d�}�}�}�}0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �G� �w�E�9� \p\@�@��A|��\p\@�@T WC��<F`NSټ� ұ��� ����T7m���4�m��!8Muߖ`NSݹ� @3���!8M���`NS����T8n���4n���4�m��,��[�A!8M���A!8Mś�A!Q}[�!8Me���4U]���!8MU��~`NSպ���T5o���4U��AX�A��A ��!�n�0 fP�p׆~P�P�`NSٴ���T�m��,����T�a � ��A|�Z d�}�}�}�}0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|��\p\@�@T WC��<`NSټ� ұ��� ����T�m���4Ս[��!8Mu�v`NSݼ���Two�� �`NS����T�n���4n���4�m���4Un���4o��tD�m���4����Tum���4U�[��!8M���`NS�q�u�y�����`��๹ �0��A ý�A4CM��!8Me��~`NSٸ���Tvn���4����!�a A ��A|�S d�}�}�}�}0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� ć� �w�E�9� \p\@�@��A|��\p\@�@T WC��<F`NSټ� ұ��� ����T7m���4�m��!8Muߖ`NSݹ� @3���!8M���`NS����T8n���4n���4�m���4Un���4o��tD�m��,��[�!8Me���4U]���!8MU��~`NSպ���T5o���4U��AX�A��A ��!�n�0 fP�p׆~P�P�`NSٴ���T�m��,����T�a � ��A|�Z 7x`� �� ��@@� d ~0�c�`�A`��`�0 &~@N3�!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|��\p\� 7��� ������ 7��� ��@ #@�@T� WC��H&`NSټ "$@#�����" ұ��� ��$@#��������T�m���4Ս���!8Mu��0�c���4��[��!8Mu��P̓�~0�`���4^��!8M��V~@̀�A!8Me��A!Q}��A!8M���!8Me���4U]��!8MU�~PNS��`NS�q�u�y�����`���"��Tym���4U���� �"��Tyo�0 �n�� 5m��Y��!8Me��~`NSٸ���Tvn���4����!�a � ��A|�Z 7x`� �� ��@@� d ~0�c�`�A`��`�0 &~@N3�!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �Ǹ �w�E�9� \p\�����A|��\p\� 7��� ������ 7��� ��@ #@�@T� WC��H&`NSټ "$@#�����" ұ��� ��$@#��������T�m���4Ս���!8Mu��0�c���4��[��!8Mu��P̓�~0�`���4^��!8M��V~@̀�A!8Me��A!8M��A!8M���A!Q}��!8Me���4U]��!8MU��`NS����T8o�`�A`��`���4U���!�n��, �� �!8M���~0�`�0 �n�� 5m��Y��!8Me��~`NSٸ���Tvn���4����!�a ���� ć� �p1�����Q�D8 ~0�c�`�A`������T����T�}@��a ���� ć/ �p1�����Q�D8 ~0�c�`�A`������T����T�}`���a ���� �ǫ �p1�����Q�D8 ~0�c�`�A`������T����T�}@��a ���� �< �p1�����Q�D8 ~0�c�`�A`���4�n������T�}`���a bA,@��Uz�P��w@!�^p��x�pr2b` ��kBp�p r2b` �!nBp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<`NSٽ���� ұ��� ����Twm���4�}[��!8Mu�60�c���4����!8Mu��~`��ؼ� @3���!8M�Ӗ`NS����T�m��Y�4n���4�m���4Un���4o���4�yOD ��X��!8MU�~`NSպ���T8o�`�A`��ÿ8v~@HG���!8M���~`NSٴ���T�m��,����T6a bA,@��Uz�P��w@!�^p��x�pq1b` ��kBp�p q1b` �!nBp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<&`NSٽ� ұ��� ����T7m���4�]���!8Mu�v`NSݺ� �X��!8Mu��~`��ظ���Two�� �`NS����T8n��Y�4n���4�m���4Un���4o���4����T5m���4Um����D������T�n���4U��AX�A����D��/����P�s��~`NSٴ��,`NSٹ���T�a bA,@��Uz�P��w@!�^p��x�pr2b` �kBp�p r2b` ��kBp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<`NSٽ���� ұ��� ����Twm���4�}[��!8Mu�60�c���4����!8Mu��~`��ؼ� @3���!8M�Ӗ`NS����T�m��Y�4n���4�m���4Un���4o���4�yOD ��X��!8MU�~`NSպ���T8o�`�A`��ÿ8v~@HG���!8M���~`NSٴ���T�m��,����T6a bA,@��Uz�P��w@!�^p��x�pq1b` �kBp�p q1b` ��kBp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<&`NSٽ� ұ��� ����T7m���4�]���!8Mu�v`NSݺ� �X��!8Mu��~`��ظ���Two�� �`NS����T8n��Y�4n���4�m���4Un���4o���4����T5m���4Um����D������T�n���4U��AX�A����D��/����P�s��~`NSٴ��,`NSٹ���T�a ��A� ����}\�}@��a ��A� 쇙��}\�}@��a ��A� ����}\�}@��a ��A� 䇘��}\�}@��a ��A� ����}\�}@��a ��A� 쇏��}\�}@��a ��A� ����}\�}@��a ��A� 쇎��}\�}@��a ��A� ����}\�}@��a ��A� 䇍��}\�}@��a ��A� ����}\�}@��a ��A� 쇌��}\�}@��a ��A� ����}�}@��a ��A� ����} �u�,a ��A� �G���} �u�,a ��A� �Ȋ��} �u�,a ��A� �G���} �u�,a ��A� ����} �u�,a ��A� �����} �u�,a ��A� ����} �u�,a ���� �Ȉ A�@�}�}�}@��a ���� �H� A�@�}�}�}@��a ���� �� A�@�}�}�}@��a ��A� ���} �u�,a ��A� ��~��} �u�,a ���� �H~ A�@�}�}�}@��a ���� ��} A�@�}�}�}@��a ��A� �}��} �u�,a ���� ��| A�@�}�}�}@��a ���� �H| A�@�}�}�}@��a ��A� ��{��} �u�,a ��A� �{��} �u�,a ��A� ��z��} �u�,a ��A� �z��} �u�,a ��A� ��y��} �u�,a ��A� �y��} �u�,a ��A� ��x��} �u�,a ���� �Hx A�@�}�}�}@��a ��A� ��o��} �u�,a ��A� �o��} �u�,a ��A� ��n��}�}@��a ��A� �n��}�}@��a ���� ��m A�@�}�}�}@��a ���� �Hm A�@�}�}�}@��a ��A� ��l��}�}@��a ��A� �l��}�}@��a ��A� ��k��}�}@��a ��A� �k��}�}@��a ��A� ��j��}�}@��a ��A� �j��}�}@��a ��A� ��i��}�}@��a ���� �Hi A�@�}�}�}@��a ��A� ��h��}�}@��a ��A� �h��}�}@��a ��A� ��_��}�}@��a ��A� �_��}�}@��a ��A� ��^��}�}@��a ���� �H^ A�@�}�}�}@��a ���� ��] A�@�}�}�}@��a ���� �H] A�@�}�}�}@��a ���� �] B�A8�}�}�}0@�c��, a ��A� �\��}�}@��a ��A� Ȉ[��}�}@��a ��A� �[��}�}@��a ��A� ��Z��}�}@��a ��A� �Z��}�}@��a ��A� ȈY��}�}@��a ��A� �Y��}�}@��a ��A� ��X��}�}@��a ���� �HX A�@�}�}�}@��a ���� �X B�A8�}�}�}�}@��a ���� �HO A�@�}�}�}@��a ���� ��N A�@�}�}�}@��a ��A� �N��}�}@��a ��A� ��M��}�}@��a ��A� �M��}�}@��a ��A� ��L��}�}@��a ��A� �L��}�}@��a ���� �L B��@�}�}@H���!<Sa ���� ؈K B��@�}�}@H���!<Sa ��A� ��J��}�}@��a ��A� �J��}�}@��a ���� ��I A�@�}�}4�}@��a ��A� �I��}�}@��a ��A� ��H��}�}@��a ���� �HH A�@�}�}4�}@��a ��A� ��?��}�}@��a ��A� �?��}�}@��a ��A� ��>��}�}@��a ��A� �>��}�}@��a ��A� ��=��}�}@��a ��A� �=��}�}@��a ��A� ��<��}�}@��a ������ ��< A�@�}�}�}@NS��!�a � ����� ��<B�@�}�}�}@NS��!�a ���� ��; A�@�}�}�}@��a ���� ��; A�@�}�}�}@��a "D,��� �����A|Ě\`�� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa ���� ��: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� ��N A�@�}�}�}@��a ���� �8 A�@�}�}�}@��a � ����� �H8B�@�}�}�}@NS��!�a ������ �H8 A�@�}�}�}@NS��!�a ���� �G/ A�@�}�}�}@��a ���� �G/ A�@�}�}�}@��a "D,��� �����A|К\`�� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa ���� �I. A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� �HO A�@�}�}�}@��a ���� ��+ A�@�}�}�}@��a � ����� ��+B�@�}�}�}@NS��!�a ������ ��+ A�@�}�}�}@NS��!�a ���� ��* A�@�}0T�b�0 !I�}@��a ���� � * A�@�}0T�b�0 !I�}@��a ��A#�` &�4��}0T�b�0 !I�}04�a��, a ��A#�` &�4��}0T�b�0 !I�}04�a��, a ���� � ) A�@�}0T�b�0 !I�}@��a ���� ��( A�@�}0T�b�0 !I�}@��a ���� � ( A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� ,g4A�@�}0T�b�0 !I�}p�a��, a ���� ,e4A�@�}0T�b�0 !I�}p�a��, a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� B�A8�}0T�b�0 !I�}p�a��, a �ȈA� � � ����@�@ �}0�c���4�u��T~PNS�~PNS��}@��a �ȈA� ��� ����@�@ �}0�c���4�u��T~PNS�~PNS��}@��a ;J,@ �� �� ������a��pC�`0�0���� ��%�1K� 7�2F0bp p�C���#�`'?�,�,�1PAD!��@y(�p�$��A8V~`��Խ� ��A!0OM���!8̀Ӷ~`N3൝�,7m�� ���,wo���<vm���4�q�u�y���,a 9J,@ �� �� ����ܐQ�$� E��,�@#�`�#8���p�Q��,Ca#�`�#9�$�Lj�� �H-�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~`N3ؼ��� 6~@̳���!8�`�f~`��ص� ��AX�A���!�b�V~P�S�&~@��a 9J,@ �� �� ����ȐQ�$� E��,�@#�`�#3���p�Q��,Ca#�`�#4�$�Lj�� � -�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~@N3��!0�n��,�][�� 0�q�u���,�n���<un���4�͛��!8�`�&~@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#.���p�Q��,Ca#�`�#/�$�Lj�� �� -�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~@N3��!0�n��,�][�� 0�q�u���,�n���<un���4�͛�!�b���4��a 5J,@� ���,C #�`�&D�$� ���,�@#�`�'d� � F� ����~�2Kp���~�P2Kp TD!��@� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�!D�$� ���,�@#�`�"d� � F� ����~�2Kp���~�P2Kp TD!��@� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�'�C�$� ���,�@#�`�'�c� � F� �����2Kp����O2Kp TD!��@�� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�'�C�$� ���,�@#�`�'�c� � F� �����2Kp����O2Kp TD!��@�� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 7J,@ �� �� �����O1K� 7x� �����1K� 7�2F0bP |R?�,�1bP |R?�,�1PAD!��@y(�p�$��A8~0�c�`���4�u�3�~`N3Զ��� �m��,Kn���<���,����~@�����!�R�a 7J,@ �� �� �����O1K� 7x� �����1K� 7�2F0bP |?�,�1bP |?�,�1PAD!��@y(�p�$��A8~0�c�`���4�u�3�~`N3Զ��� �m��,Kn���<���,����~@�����!�R�a � �X�@�}�}@0�@��!8Ma � �T�@�}�}@0�@��!8Ma � �`�@�}�}@0�@��!8Ma ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a �ȈA� �I���}@NS��D�`��, a �ȈA� �����}@NS��D�`��, a �ȈA� �I�� ����@�@ �}0�c���4����T����T�qOD �}@��a �ȈA� ���� ����@�@ �}0�c���4����T����T�qOD �}@��a ��A� � ���}0<Sa ��A� �����}0<Sa ��A� � ���}0<Sa ��A� �����}0<Sa ���d�@�}<a ���d�@�}<a ���d�@�}<a ���d�@�}<a ���p�@�}pD� �a ���p�@�}pD� �a ���p�@�}pD� �a ���p�@�}pD� �a ���� ̇� B�A8�}`8E!�q )�}@�Da ��A� ����} a ���� �J���}0�d�2a ��A� ����}@0��a �pCPa0bp ��6�� Ap�A8�}@<1���a A,@ � ������ ���B0���}@<1���a �pCPa0bp ��6C� Ap�A8�}@<1���a A,@� ������ ���B0���}@<1���a A, 4�\W ��8�C:�C9�C8��:��8́���} #D�` a &A,@��3��<��9���9��������A���������������6!P�\Ď��| d �}PX�0F~ 8�� ұX��!EB 4�q ��� Qa 'A,@��3��<��9���9��������A���������������6!P�\Ď��| d �}PX�0&~PHT�#�}pH�P a�CDF~@8����A!��a #A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@�}PX�0&~0H�b�CD�}P �2~0HTa $A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ �}PX�0~PHT�#�}0T@d��@,`��t,>a %A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d �}PX�0F~ 8�� ұ��P�u�L�� a 'A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d �}PX�0&~PHT�#�}0T@d��@,`�����ұ�a &A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d �}PX�0F~ 8�� ұ��P�u �& )&~0HTa 'A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d �}PX�0&~PHT�#�}0T@d��4� H��N�#6~PH��#a &A,@�A5��<��9���9��������A���������������6!P�\Ď��� d �}PX�0F~ 8�� ұX��!EB 4�q ��� Qa #A,@Ts�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@�}PX�0&~0H�b�CD�}P �2~0HTa %A,@�A5�<��9����;܃;��8́��������� }`l`l l 6!P�\Ď��� d �}PX�0F~ 8�� ұ��P�u�L�� a &A,@�A5�<��9����9�C>��8́��������� }`l`l l 6!P�\Ď��� d �}PX�0F~ 8�� ұ��P�u �& )&~0HTa UA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�}pH�P a����m��t,>b���HLDH�2Ֆ~@8�����!Q��Ԇ~PH��#V~��L�}0T@a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d��D>R���N�#>b��t,>�#V~��L>a OA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~PHT�#�~`H��#��(��D�D-Sm��D>R��A!���AHLDH�2��P�u�La QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`��D>R���ұ�����HLDH�2�a TA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�~P8���f~��L��ұ��m������Hm��t,>b� 1!Q�d�CD�}P �2a WA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�~`8����� �H�#�~pH��#>b� 1!Q��#a UA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�~P8����~`H��#��(��D�D-Sm������Hm��t,>b� 1!Q�d�CD�}�,@C���a XA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}�,@C���X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a WA,(@��3��<��9���9��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m�� %��~�HT�#>R�"����m� 1!Q�T���!Q�����ұ���X�AHLDH�2��P��N�#>a QA,'@=s�A��:�;�A=��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;�1�� B`�����| ����@~p#G�`0��#F�`�'K@d�}PX�0�~�HT�#>R��"����m� 1!Q�T���!Q�����$��D�D-�q Y�A1����!���a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m��D>�#�� ұ����f~��L�����X�AHLDH�2��!����q Y�A1�X���D>�#a WA,(@��3�<��9����9�C>��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m��D>�#�� ұ����f~��L�������!�����$��D�D-�q Y�� a�b�����a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d��D>R���N�#>b��t,>�#V~��L>a [A,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����uR$�@C�A"�����X��D>�#>b� 1!Q��#>b�CDv~�HT�#>�#�~�8���>�#�~�H��#�����8��D�D-S�#>a QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`��D>R���ұ�����HLDH�2�a TA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0�~�HT�#�����$ұ������4��D�D-����q Y�A1���A"Q��������"���>�#V~��L���a WA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�~`8����� �H�#�~pH��#>b� 1!Q��#a ZA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����� N�#>�#�~�H��#>�#V~��L>�#�}0T@d��@,`��D>�#>b�����#>b��t,>b������HLDH�2�>�#a XA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}�,@C���X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a [A,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����� N�#>�#�~�H��#>�#V~��L>�#�}0T@d��4� H��$������$N�#�����(ұ���#>b� 1!Q�T���a A,@�& !P�\Î$����L���&@�@ �}PX�0F~ 8�� ұ���!EB 4�u ��� Q�q )a A,@�& !P�\Î$����L���&@�@ �}PX�0&~PHT�#�}pH�P a�����ұ��u ���a A,@�& !P�܈A� �J� �a� �A8 �}PX�06~0H�b�CD�}P �2�}@0����� Qa A,@�& !P�܈A� �J� �a� �A8 �}PX�0&~PHT�#6~PH��#�}0T@d��@,`�H a A,@�& !P�\Î$����L���&@�@ �}PX�0F~ 8�� ұX��P�y�L�� ���a A,@�& !P�\Î$����L���&@�@ �}PX�0&~PHT�#F~@8����A!��X��P�y�L�q )a A,@�O6!P\Ď$�����B$H0�� �}PX�0V~ 8�� ұX��P�q )�}�,@C������ Qa A,@�O6!P\Ď$�����B$H0�� �}PX�06~PHT�#V~@8���A!��X��P�q )�}�,@C���a #A,@�& !P�\Î�A~� 2b� ��2J�0�#�`�+'d�}PX�0F~ 8�� ұ���!EB 4���,�m�CD&~0HT`�H���,a A,@�& !P�܈A� ��# �`p+.��!�&��A� ��� �}PX�0v~`��Է� ұX��P�y�L�q )&~0HT`��, a "A,@�& !P�\Î�A~� 2b� ��2 �0�#�`�+'d�}PX�0F~ 8�� ұ��!�R��}0T@d��@,`�H�� X�!�a #A,@�O6!P\Ď�A~�L2b� �3K$�hB�����L�A8�}PX�0V~ 8�� ұX��!�R��}0T@d�H�y �& )6~0HT`��, a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0v~PHT�#�~P8����~`H��#��(��D�D-Sm��t,>b�H�yR$�@CX��D>b� 1!Q�d��D>R[��Pa MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d�H��N�#>b��t,>�#V~��L>b��D>R�a FA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~PHT�#�~`H��#��(��D�D-Sm��t,>b�H���Hm� 1!Q�d�CD�}P �2a HA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`�H��,��D�D-����!����� �H�#a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~PHT�#�~`H��#��(��D�D-Sm����m��t,>b�H���Hm�����$��D�D-�u ��A1�a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�}@0��X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a JA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~PHT�#�~P8����~`H��#��(��D�D-Sm��t,>b�H�y �& )�~`HT�#��$��D�D-��N�#�}0T@a MA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}@0����� a�b�����X��!�����,��D�D-��X�"Q���>a MA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�'O`d�}PX�0f~��L��������b���������D>�#�yR$�@C�"Q���Hm��t,>�#��$��D�D-�u ��!���a GA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ~�E�@�}PX�0f~��L��������b��D>�#�� ұ����V~��L�}0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�'O`d�}PX�0f~��L��������b���������D>�#�� �����~�H��#>b[�AHLDH�2Y��P�y�L��ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<�vsy��`n v@`�dl@q�ld {p�<�A��#E�`�;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ~�F�@�}PX�0v~��L��������b��4� H��N�#>b�������~�HT�#>R��"����m� 1!Q�d�CD�~pH��#>a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d�H��N�#>b��t,>�#V~��L>b��D>R�a PA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�~�HT�#����yR$�@C�A"�����X�AHLDH�2���X��D>�#>b�CD�}@0����A"Q�������A�D>r���X��"���>�#f~��L���a HA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`�H��ұ���X��HLDH�2��� �H�#a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0�~�HT�#�����$ұ������4��D�D-����u ��A1����b��D>�#>b��t,>b������HLDH�2�>�#a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�}@0��X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a PA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0�~�HT�#�����$ұ������4��D�D-����� N�#>�#�}0T@d��@,`�H��$������$N�#�����(ұ���#>b� 1!Q�T���a MA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}@0����� a�b�����X��!�����,��D�D-��X�"Q���>a PA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~�HT�#�����$ұ������4��D�D-����� N�#>�#�}0T@d�H�y �& )�~�HT�#>�#�~�8���>�#�~�H��#�����8��D�D-S�#>a A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ����!8MU�&~@NS�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L�q ����HLDH�2�6~��L����T5n���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4M6~��L��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������0n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������0n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������pn0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������pnPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������pn0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������pn0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������pnPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������pnPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������pn`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������pn`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������0n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������0n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,T� q7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a OA,� }7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d��_�_�H#�d���4�m��A���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4M6~��L��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a OA,D� �7W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L�q ����HLDH�2�F~@NS���HLDH�2�V~`NSո���T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a 2A,� �7�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� �7�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,D� �7�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,T� �7�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#E�` 3��A8�}0<Sa A,d�\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#E�`P3��A8�}0<Sa 2A,4� �7�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� 8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� 8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,T� q7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a OA,� }7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a OA,D� �7W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!�~������4M~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� �7�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,D� �7�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,T� �7�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#E�` 3��A8�}0<Sa A,d�\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#E�`P3��A8�}0<Sa 2A,4� �7�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� 8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� 8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��} �q�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��} �q�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��} �q�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��} �q�c��t �q #2"�\�.�E�^�.���`�.���b�/86��d�/XF�f�0x� �h�0�� �j�0�6�l�1�F�n�1���p�1�)�r�287-�t�2XG8�v�3x�:�x�3��=�z�3�7I�|�4�GL�~�4�7O���5@Z���58�\���5X�_���6x0k���6�@n���6�0y���7��|���8�����98`����:XP����:x௃��;������;��ȃ��<�0؃��=�0郠�?�����?8����@X����Ax���B��.���C��?���D��X���E��[���E�k���G8 ����Hh ����H������I� ����I(�����Ih ����I������I� ����J�����JH ����J������J�0����JЯ���KHP����K����K������K����KH�����L�Ʉ��L��ʄ��L( ̄��LH(�̈́��L�(0τ��M�(�؄��M)@ڄ��MH)�ۄ��M�)@݄��M�)�ބ��M*P脢�NH*�鄦�N�*p넪�N�*0턮�N+��NH+0����O�+�����O�+0����O,�����OH,�����O�,���P�,� ���P- ���PH-� ���P�-P���P�-����Q.`���QH.����Q�.`���Q�.����Q/����R(/`)���Rh/�-���S�/`:���S�/<���S�/�=���S�/@?���T(8 I���TH8�J���T�8@O���U�8�[���U�8`]���U�8_���U9�h���V89�j���Vx9`l���V�9�n���V�9`x���W:@z���WX: |���W�:~���W�:����X;�����XX;�����X�;�����X�;�����Y<�����YX<`����Z�<ૅ��Z�=@����[8> ʅ��\�>م��]x? ���^�?����^�?P���^H0텂�^HH�_�H�����_�H�����_I�����_HIp����_�I0 ���`�I� ���`J� ���`(J ���`HJ0���`hJp���a�J����a�J@���aK����a8K����aXK(���bxK�+���b�K�8���c�KP=���c�K`J���d�KpO���eL0\���e8L l���gXL�~���hxL`����i�L`����k�L�����l�LPچ��m�L����oM����p8Mp���rXM�.���s�M`>���t�M�I���t�M@M���t�M�X���u(N]���uHNpi���vhN�x���w�N�����x�NP����z�N����{�N྇��|OP؇��}(O0���~HO������hO� �����O���͂�O�.�����O�9�����O`=����X�H����(X�X����HX�_����hXo�����X�{��؇�X �����X������XЛ����Y����(Y0�����HY������hY�������Yp������Y������YP������Y�����Z�����(Z� ��ݐHZ��БhZ������Z*�����Z�.�����Z�>�����Z�M����[ ]���([�h����H[�o����h[`|����[������[@���Θ�[�������[������\������(\�����H\������h\�����\������\����ޞ�\����џ�\����]p ���(]���ڡH]P����h]�*��Ȣ�]0.�����]�9��ˣ�]�I��Ȥ�]�X����^�_����(^�l���H^�o����h^�|�����^�������^Л�����^���˪�^`�����_������(_p���ŬH_P�����h_0������_�������_`������_������_� ����h��α(h�����Hh,����hhP<�����hL�����h�[��ٵ�hp_�����h o����i@|���(i �����Hi���ݸhi�������i0������i������i�������i�����j������(j������Hj �����hj�������j� �����j@�����j�(�����j0.����k@:����(kP>����HkPJ����hk�Y�����k�h�����k0o�����k |�����k �����l@�����(l������Hl0�����hl������l������l�������lp������l������m������(m������Hm�����hm� �����mp�����m`�����m`+�����m�8����n�?����(npN����Hn ]����hn i�����n�o�����n�|�����n�������nЌ����oИ����(oP�����Ho�����ho�������o�������o�������o�������o�����x������(x`����Hx` ����hx�����x������x,�����x8�����x<����y�K����(y@Z����Hy�h����hy�m�����y�y�����y�����y@������y�����z������(z������HzP�����hz@������z`�] ����threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_52_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z6__shfliii_Z6__shfljii_Z9__shfl_upiji_Z9__shfl_upjji_Z11__shfl_downiji_Z11__shfl_downjji_Z10__shfl_xoriii_Z10__shfl_xorjii_Z6__shflfii_Z9__shfl_upfji_Z11__shfl_downfji_Z10__shfl_xorfii_Z6__shflxii_Z6__shflyii_Z9__shfl_upxji_Z9__shfl_upyji_Z11__shfl_downxji_Z11__shfl_downyji_Z10__shfl_xorxii_Z10__shfl_xoryii_Z6__shfldii_Z9__shfl_updji_Z11__shfl_downdji_Z10__shfl_xordii_Z6__shfllii_Z6__shflmii_Z9__shfl_uplji_Z9__shfl_upmji_Z11__shfl_downlji_Z11__shfl_downmji_Z10__shfl_xorlii_Z10__shfl_xormii_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! �y !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L&� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��U( ���EDT ���*�Re�H)#�E!�-��B�� �S�0��� A9@S���L@W��~ʪ�@[�� ��@�WE0� �T@c�E��,2��(BhQZG�X��"?���[�)RE�"�Ȓ"XB�E�!��/����E{E@�/��(�Q`H��F�ЈateR�L#ň�"��5F�����"��IF��ʨ2��\F�Q2EHF3ڌ�):��ge���2\Q$Z�(�"� W(�V�+�*�P+�k�A��� �� ��pE\��ke��.K�2\qW($[��K�� W��V�+��p+��B��� �!��pEb��oe��1R�2\�X5$\�H�"� WPFW�+.��+��%Cʕ���!���`�(b�*�E���� ]W�ȡ�@Z��!���Z��E��;��E��:�ȼ"tw�g (�zz�zE��/j��F���(�"�g�W�����ct_�{��3�/�a�ˈ?C���/��?��?#�CN�,�@� �� ,�k���­;� �qE\w�q��`!�� ��b\qAX�+�2���W�Da1� �,,���qaX�+ ��;� qEb@� ���B\�����_~!�q�f����/Db!��r�D,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8no�P��� @������av@�1�7 � �P�av@h� �Aw�B"��� ��F.�� @���\0��`�2�`y7��|r�8�n ���q��@;����ແv@� ��w�R-��� ��].�� @�ڿ\0��`D�A.G� @�j� �C� ��h� �1z�~5�� ��v@x�q��@;�x�8�n �P;���7���Y@��`��- �� @��@��� ��}� �qz�FPp�@��v@�(��q��@;��\�8To �P{ �`�7�hOW0��`���+G� @��]���� ���� ��z��Yp〽�v@�-��q��@;�\�8do �P� �`�7�h�W0��`���+G� @�:����� "���-@ ��r� �H�9xC��� `����%0D��!��"��Y@ �`u�, �H�:`C$&��!R��@� n�� `�t�C@ ��w����!��0D��2 �Hq<hf@�i� �"��0h@���K �"����C���8 `���D@ �v{����!|�0DR��� �Ha>px@��χ+�"����C$x�Q `�T�6 @ �~~�J��!��\)0D���: �H�?p�@���  `����C�Y$�`�"�$��C��$�W `���� @ �ȓ�f��!R�V,0D�Q� �HoJ�@��N �"�)��C$Y%�^``�d��� @ �J�x��!��8P0D"[2 �HtKD����t��@"�.!� C$�%$y@`����T, �Z����!R?P0Drc"� �HLH"��)� �$@"�31� C${&��@`����, �z�hb��!�ZM0D�k¹ �H�M@:@�鶉�'"�7�C��& � `�t�T �r�x���!��Z0D�sr �H�NDq@�)׉�."�;!�C$~'$� `����� �ž�B��!R�i0D}B: �H�OL�@�����5"�?A�C$,�� `�$�Ee �r��!+o0D��� �H�X\�@��%��<"�e!�C$�,&� `�T�� �r�����!RzC|0Db�B��H�Y@�@��E�!>�"�h!�C�1-�� `����3 ���`���!R�H|0D��™�H�Z0�@�i] g>"�k��C��-�� `�Բ�3 �v�����!��|0D��"��H�[L�@�i| g>"�o�C�.�� `���4 �~�p���!R�|0D��™�H�\@�@�i��i>"�sQ�C��.�� `�d�E5 �ֺ`���!�]L}0D킩�H�]0�@�i� �>"�w��C��.�� `�T�s �f�X���!��J~0DB�b��Hs^$�@��ϋe?"�z��C�X/�� `���E�@ �̽`���!���~0D�����H&_$�@���$?"�|��C$�/�� `���ű@ ��H���!R��~0D �"��H�_ �@�I��d?"�~q�C$�/�� `����@ ��8���!��E0D�����H&h�@����?�"ɠq�C�4� `�ԃ� ���@���!R�0D�C#��H{h�@�) �?"��Q�C$W4� `�d�1"@ �t�@J��!�8J�0DbG9�H�h$'@����?"��A�C$�4�� `����@ �n�HF��!Xň0D*KCQ�Hoi*@��.��?"��A�C��4 `�����"@ �`�PJ��!�nF�0DO��H�i�@��=��?"ѧA�C$�4�� `��F�@ �J�@���!R��0D�Q���H9j�@��G �?"��Q�C$55�� `�$�F�@ ���PF��!R�ƈ0D:U���H�j�@�IV �?"�Q�C�_5�� `�t�F�@ ���H���!R�F~0D�Wc)�H&k%@��e �E"嬁�C��5�� `���F�@ ���H���!���0D�[��H�k�@�Iu��?"ͮa�C��5�� `�$���@ ���H���!R��0D�_#��H l�@�Ʉ eD"��a�C$6�� `���F�@ ���8���!��0Drc��Hvl�@�i� �?"��q�C$V6�� `�d���@ �z�hF��!�:Ɉ0D�g��H!m(#@�i� gD"崡�C��6 `���#@ ���H���!h�0D2mC��H�m2@�鶍EF"����C$�6�� `�4߆�@ ���@���!R��0D2q#��H/n2@��� EF"��q�C$37�� `�4��@ ���HF��!��ň0DZu#��H�n4@� ׍dD"��Q�C$s7� `���F1"@ ���H���!R��0Dy#��H,o�@�I��?"��a�C��7�� `�����@ ���H���!R��0D�{��H�o$6@� � �F"��q�C��7�� `�4���@ ���0���!��0D����H&x 8@�)�?"��1�C$<�� `�����@ �v�8p��!��0D*�C��Hwx8�@���?"����C�r<�� `����@ ���X���!RH�0DJ����H8y,�@�i,��?"���C$�<�� `�����@ �J�ht��!�l�0D�ͣ��H�y�@�i=$>"���C��<0 `�4�G&@ �P�@���!��0D���H>z `@��LL"�遀 C$;=0 `��& �L�@F��!���0D�Ճ� �H�z >@�I\DG"��A�C$w=�� `�d� ���@���!���0DZ��H3{`@�)gL"�큀 C��=0 `��& ���@���!R��0DJ��H�{ <@�)w�G�"���C��= `�Ծ�#& ���`���! ��0D�� �Hc|<b@�I��GL"��� C$Y>1 `���G$& ���h���!R?�0Dr�! �H;}<b@�I�FL�"��� C��>1 `���#& ���`���!{��0D�� �H'~<b@���FL�"��� C�8?1 `����#& �X�`���!���0D:�� �H�~8b@�)�EL�"��� C$�?1 `�T��#& ���`���!���0Dz�� �H�@ C��?���!���@��f `�4��c& ��q���!"��0D E�1 �H��@h@� M�"�#r� C�zD 6 `���ȡ&0 �B)���!�I"��0D�I� �Hf� p@��-N�"�%�� C$�D09 `�d�H�#@ �~Ix��!z" �0D�O$� �H��`r@�IF��G�"�(��C$2E `�ԦH�#@ ������!��" �0D�U$� �H��$<@�)]��G�"�+�� C$�E�� `���ȳ@ ��y���!R�"�~0Db]��H�@�@�ih?�"�0�C�F�� `���g' �Nq���!R-#�0Dg�� �H�8x@���N"�4�� C$�F< `���ȃ'@ �Ty���!Rn#��0D�o�� �H#�8|@�)��O�"�8�� C�6G<= `�����'@ �ty���!R�#�0D�w�� �H'�x~@����O"�>�@�����L"�? C��G3 `�䂉c&@ �x0y���!�&��0D���1�H��4f@���L"�c˜ C�wL3 `��Ic&@ �V2y���!�N&��0DB��1�Hw�8f@��4��L"�f� C$�L3 `��Ic&@ ��3y���!�&��0D��D�Hd� l@��MKT "�j2� C�ZM(5�`���I�&@ ��5���!R�&�0D��$��Hn�d�@��t�("�n��  C��M�8 `�D� F*@4 �x8y���!�'��0D��3�H�|�@�)��00�Hb�x�@� ���"�v��C$�N�Z `��� W  ��<Y���!�'�|�0Dj�dB�H��X�����MU"�|�� C$�OT `���Ʌ*@< �`?����!�'S�0D����H#�@�@�i�)>"��I ��Pa���!�(*�|0DzE��H��<�@��i>"��"�C��T�� `�$�J4 ��Ra^��!�_*ϫ0DrMEz�H�D�@�)>&V"���� C�U�X `����+ ��T�b��!R�*R�0DZU%��H��D�@��]fV"��� C$�U�Y `���J4+ ��Vab��!��*L�0D]��H��<�@�)|)V"ͯ"� C�V�X `�d�J+ ��X�j��!�+׭0D�ee��H�X�@�I��V"���� C$�V�Z `���U+ �n[�j��!�{+S�0D q�� �H/�8�@���+W"͹�� C�UW�\ `�$���+ ��]�z��!�+V�0D�y���Ht�`�@����W"��r� C��W�^ `�$���+ ��p�~��!�.د0D�����H�L�@����W"��b� C$�\�^ `�ė �+ �hs�z��!{.W�0D����H:�,�@��L�%\"�鲌 C�=]�q `�d��b.D �buY �H��,�@��\(]"��� C��]�w `���K$/ ��vy���!�.�0D:݅��H��,����|��\�"��@ ��wY���!� /��0D��% �Hi�H$@�i��d"��� C�^^�� `��΋3 �FzYd��!�K/K�0D��%��Hj�D;@�i��g"��„ C��^�p `�T� 3.D ��{a���!R/��0DJ�"��„ C�0_�t `�$�K�. �F}����!R�/��0D:���H��@�@���j_"��Œ C$�_s@`�D� 0D�� �H��H�@���)d"��2� C�d�� `�d�L�2 �ΐ�Z��!2�0DzE���H��05@�� g"�##� C��d&� `�� . �Ԓa���!�]2̸0DM�"�H��0�@�I7 `�d� . �䓉���!҈2�0D�QFz�Hf�H�@� O�^"�*� C$\e�} `�Ԯ 3.H ��a� �!R�2 @�)f&\"�,#� C��e�� `���D2 �h��N��!��2��0D�_&j�H)�\0@� �Ff"�1�� C$<f$� `��ʌ�3 �x��|��!�;3L�0D�g� �H'�0�@�i�f\�"�4Ø C��f��!�]3L�0Dm&J�H��D�@����]"�7#� C�g�z `��� �/ �Ҝ����!��3̸ 0DRu�1$�H��0C$qg�p `����/ �@��B��!��3�0D*{f:�Hx�D*@�)���e"�>s� C��g� `��� S3 �R��p��!�6��0Dj�f��H��0�@��&\"�bÌ C$rl�q `�� c.D ���a �H(�0�@��&�(]"�e� C$�l�w `����$/ �t�����!�z6�0D�Ϧ��H/�0���iG�\�"�i�@ ��a���!ҟ6��0D��F �H��L$@��^��d"�l� C$�m�� `����3 �D�ad��!��6L�0D��F��H��H;@����g"�pÄ C�n�p `��� 3.D ��a���!R(7��0Dj冁"�rÄ C�rn�t `�d�M�. �N�����!RN7��0DZ���H{�@�@�i��j_"�wÌ C$�ns@`��� 0D"� �H0�H�@�I�)d"�y3� C�So�� `���M�2 �ֽ�Z��!�7�0D�����H?�05@�i� g"�}#� C��o&� `�$� 6 �ܿa���!��7��00D2A�&�H2�0d����l"��À C$;t$� `�����6 �tљ���!R;:��0DI'��H1�Dr@�I,�n"�È C$�t��`��c6 �x�a���!z:��0D�Og��H.�Pz@�IL�o"٩#� C$Tu$� `���&: ���aH��!��:��0DRYgB�H=�L�@� n�u"��À C$�u� `�Ļ#6L ���a�� �!�: �00Da�1�H,�0`@� � m"��#� C$>v&� `�����6 ��ى���!�<;��0D"iǢ�H:�0b�ɬ�l�"ɵØ C$�v� `����d7 �zۙ���!|;��0D"q���H8�H~@�I� t"񹃉C$Zw� `��c: ��ݙP��!ҿ;��0D�y�b�Hf�0`@�I�l"��È C$�w�``�d�C6L ���a���!��; �0D�GB�H,�Hj@����m"��3� C$R|"� `�T�O$7 ������!?>��@0DBɇ!(�H4�0f@� ,l"��3� C��|&� `�$��7 ������!�~>��0Db�G�H>�`�@��N�t"��ØC$W}&� `��Ϥ: ����X��!�> �0D�ه�H`�0b���mFl�"��Ð C$�}� `��6 �x�����!��>��0D�gb�H3�Ln@�Ɍ�n"��� C$T~,� `���#6P ���a� �!�=?��0D��H.�Lv@�)�� o"��C� C$�~(� `��ۏ�7 ����@��!�?��0D��!�Hd�0�@� Ο u"��3�C$[(� `���5 �@�����!��?�|0Dj��$6���$2�(L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B��1���G�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �align&0����v#�� #�� #� #�ڍ ��8� ��9� ��9� ��:� l7���0���0���0�0�0����Y���[���\���^���_��Bi���j��m���m��x���x���z��|�����v#��#��#��#�A#�Q#��#��#�R#�R#�"R#�2R#�BR#�RR#�bR#��R#"�R#%�R#(�R#+�R#.S#1S#9CS#<SS#?cS#��S#��S#�V#�V#�"V#�2V#�BV#��V#"�V#%�V#(�V#+�V#.�V#1�V#9#W#<3W#?CW#��W#��W#��W#��W#�Z#�Z#�"Z#�rZ#"�Z#%�Z#(�Z#+�Z#.�Z#1�Z#9[#<[#?#[#�[#��[#��[#��[#��[#��[#�^#�R^#"c^#%s^#(�^#+�^#.�^#1�^#9�^#<�^#?_#�_#�_#�_#�_#��_#��_#��_#�2b#"Cb#%Sb#(cb#+sb#.�b#1�b#9�b#<�b#?�b#�bc#�rc#��c#�c#��c#��c#��c#�f#"#f#%3f#(Cf#+Sf#.cf#1sf#9�f#<�f#?�f#iCg#�ۍ �M�� p7��6v6��6w6���B������� w#u�g#w�g#yj#{j#}#j#3j#�Cj#�Sj#��j#��j#��j#i#k#k3k#mCk#oSk#qck#ssk#u�k#w�k#y�k#{�k#}n#n#�#n#�3n#�cn#�sn#��n#io#ko#m#o#o3o#qCo#sSo#uco#w�o#y�o#{�o#}�o#�o#�r#�r#�Cr#�Sr#�cr#i�r#k�r#ms#os#q#s#s3s#uCs#w�s#y�s#{�s#}�s#�s#��s#��s#�#v#�3v#�Cv3�0�@� C3 Fp�0 �1Ð� �3 K��043��� �03 P�0HA4�0� D3 U�0XA4�p� D3 Y�0hA4ð� D3 ]�0xA4��`0��0�A3 c�� `0�P�0�A3 g�� � C� �� �� � C� �� �� � C� �� �� � C� �� �� � C� �� �� � C� �� �� (� C(� �(� �(� )� C)� �)� �)� *� C*� �*� �*� +� C+� �+� �+� ,� C,� �,� �,� -� C-� �-� �-� .� C.� �.� �.� /� C/� �/� �/� 8� C8� �8� �8� 9� C9� �9� �9� :� C:� �:� �:� ;� C;� �;� �;� <� C<� �<� �<� =� C=� �=� �=� >� C>� �>� �>� ?� C?� �?� �?� H� CH� �H� �H� I� CI� �I� �I� J� CJ� �J� �J� K� CK� �K/1�AL�0�D3 3�� CM41�`�M�0�Dp3 9�� �N11ðAL�0�D@3 =�� �O71���M�0�E@3 a�� �X71�0�K�0�E3 e�� �Y41�pM�0�Ep3 i�� �Z/1ðAL�0�E3 m�� �[41���M�0�Ep3 q�� �\71�0�M�0�E�3 u�� �]11�pM�0�E@3 y�� �^71ð�K�0�E3 }�� �_41��M�0�Fp3 ��� �h41�0�M�0�Fp3 ��� �i11�pAL�0�F@3 ��� �j71ð�M�0�F�3 ��� �k11��M�0�F@3 ��� �l71�0M�0�Fp3 ���� b�h�b�h�h h�h�b�h�h�h�h�h�h�h h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�b�b�h h�b�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h���������������������������������������������������������������������������������������������������������������������������������������������������������&(7;��49�2���7�Q��H��ή�%���.�.��mnհ�����Ѝ����������� ��0��@��P��`��p�����������������Џ���������!�1�A�Q�a�q�����������ё���0�1!�21�3A�4Q�5a�6q�7��8��9��:��;��<ѓ=�>�?�P�Q!�R1�SA�TQ�Ua�Vq�W��X��Y��Z��[��\ѕ]�^�_�p�q!�r1�sA�tQ�ua�vq�w��x��y��z��{��|ї}�~�����!��1��A��Q��a��q�����������������љ�ᙞ�� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �d�}\�}������4Ma A,$� � �d�}\�}������4Ma A,T� � ��6C�A8 �}\�}`~������4M�}������4Ma A,�� � ��6C�A8 �}\�}`~������4M�}������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,D� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`~������4M�}������4Ma A,� � ��6C�A8 �}\�}`~������4M�}������4Ma A,D� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,t� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � �d�}\�}������4Ma A,4� � �d�}\�}������4Ma A,d� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,D� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,t� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,� � ��6C�A8 �}\�}`�}������4M~������4Ma A,4� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,d� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � �d�}\�}������4Ma A,4� � ��6C�A8 �}\�}`�}������4M~������4Ma A,d� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,�� � �d�}\�}������4Ma A,�� � �d�}\�}������4Ma A,$� � ��6C�A8 �}\�}`�}������4M~������4Ma A,T� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma A,T� � �d�}\�}������4Ma A,�� � ��6C�A8 �}\�}`�}������4M~������4Ma A,�� � �6D0�B�@ �}\�}`�}d~������4M~������4M&~������4Ma A,�� � A�6E0��lCP �~������4M6~������4M�}X�}\�}`�}dF~������4M&~������4Ma Ĉ�� �G� �pC`f0��,�0K0 TD�B�@�}0�c�`�A`���4�y�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` ��kBp�p r2b` �nBp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1�~`NSٽ�$@#������ ұ��� ��$@#��������Twm���4Ս[�� 0���,6o�� v`NS����T8m���4n���4�m���4Un���4o���4����T5n���4U��AX�A��!�n���<wn���4�M��!8Meۦ~@��X��!8Me�a Ĉ�� ć� �pC`f0��,�0K0 TD�B�@�}0�c�`�A`���4�y�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �kBp�p r2b` ��kBp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1�~`NSٽ�$@#������ ұ��� ��$@#��������Twm���4Ս[�� 0���,6o�� v`NS����T8m���4n���4�m���4Un���4o���4����T5n���4U��AX�A��!�n���<wn���4�M��!8Meۦ~@��X��!8Me�a ���� ć� ˆ�� �ǬB�@�}�}�}~P����}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|��\p�@�@T� WC��5�~`NSٽ� ұ��� ����T7n���4խ���!8Mu�~0�`���4�����DF~@̀��A!8Me[�A!8M���A!Q}��A!8M�[�!8Me���4U]���!8MU�`��ܷ���Txo���4U��AX�A��A ��!�n��, n���!˂�`NS巡@3Դ���T�m���4����!�a ���� ć/ ˆ�� ��/B�@�}�}�}�}`������,>Ra ���� �G/ A�@�}�}�}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|��\p�@�@T� WC��5`NSټ� ұ��� ����T7m���4�m[��!8Mu�`��ػ� @3���!8M�߆`NS��Nd���4���!�r�F~@̀��A!8Me��A!8M�[�A!8M�[�!8Me���4U]���!8MU��~`NSպ���T5o��tD�m�`�A`��`��tD���,�m�� 5m���4�}��!�a ���� �ǫ ˆ�� ��B�@�}�}�}~P����}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|��\p�@�@T� WC��5�~`NSٽ��,�~`NSٶ� ұ��� ����T7n���4խ���!8Mu�~0�`���4�����D6~PNS�v`NSὕ��T��@3�~PHGT�~@NS��A!8M�[��!8MU׶~`NSո���T�m���4U��AX�A��A ��!�n��,�}��!˂�f`��༡@3Դ���T6a ���� �< ˆ�� �G<B�@�}�}�}�}`������,>Ra ���� ��; A�@�}�}�}@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|��\p�@�@T� WC��5`NSټ� ұ��� ����T7m���4�m[��!8Mu�`��ػ� @3���!8M�߆`NS����T�n��,˭�4n���4�m���4Un���4o����A!Q}[�!8Me���4U]���!8MU��~`NSպ���T5o�`�A`��`��tD���,�m�� 5m���4�}��!�a Ĉ�� ć� ˆ�� �Ǭ�pC�f0��,�0K0 TD B�@ &~@N3X�� 0�q�u�y���,�}�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������0H�b��tD��������~0�`���4�m���4Un���4o��,�}��!8Me���4U]��!8MU��}�}V`���y���,8o�� 5m���4�m��!�b���4����!8Me�&`NSݸ���T�n���<F`NSݼ������T8n����!8M��V~@̀��A!Q}[��!8M���`NS帝���`NS�"��T� a Ĉ�� �ǫ ˆ�� ���pC�f0��,�0K0 TD B�@ &~@N3X�� 0�q�u�y���,�}�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������0H�b��tD��������~0�`���4�m���4Un���4o��,�}��!8Me���4U]��!8MU��}�}V`���y���,8o�� 5m���4�m��!�b���4����!8Me�&`NSݸ���T�n���<F`NSݼ������T8n����!8M��V~@̀��A!Q}[��!8M���`NS帝���`NS�"��T� a � ��A|�Z d�}�}�}�}0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|��\p\@�@T WC��<`NSټ� ұ��� ����T�m���4Ս[��!8Mu�v`NSݼ���Two�� �`NS����T�n���4n���4�m���4Un���4o��tD�m���4����Tum���4U�[��!8M���`NS�q�u�y�����`��๹ �0��A ý�A4CM��!8Me��~`NSٸ���Tvn���4����!�a A ��A|�R d�}�}�}�}0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �G� �w�E�9� \p\@�@��A|��\p\@�@T WC��<F`NSټ� ұ��� ����T7m���4�m��!8Muߖ`NSݹ� @3���!8M���`NS����T8n���4n���4�m��,��[�A!8M���A!8Mś�A!Q}[�!8Me���4U]���!8MU��~`NSպ���T5o���4U��AX�A��A ��!�n�0 fP�p׆~P�P�`NSٴ���T�m��,����T�a � ��A|�Z d�}�}�}�}0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|��\p\@�@T WC��<`NSټ� ұ��� ����T�m���4Ս[��!8Mu�v`NSݼ���Two�� �`NS����T�n���4n���4�m���4Un���4o��tD�m���4����Tum���4U�[��!8M���`NS�q�u�y�����`��๹ �0��A ý�A4CM��!8Me��~`NSٸ���Tvn���4����!�a A ��A|�S d�}�}�}�}0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� ć� �w�E�9� \p\@�@��A|��\p\@�@T WC��<F`NSټ� ұ��� ����T7m���4�m��!8Muߖ`NSݹ� @3���!8M���`NS����T8n���4n���4�m���4Un���4o��tD�m��,��[�!8Me���4U]���!8MU��~`NSպ���T5o���4U��AX�A��A ��!�n�0 fP�p׆~P�P�`NSٴ���T�m��,����T�a � ��A|�Z 7x`� �� ��@@� d ~0�c�`�A`��`�0 &~@N3�!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|��\p\� 7��� ������ 7��� ��@ #@�@T� WC��H&`NSټ "$@#�����" ұ��� ��$@#��������T�m���4Ս���!8Mu��0�c���4��[��!8Mu��P̓�~0�`���4^��!8M��V~@̀�A!8Me��A!Q}��A!8M���!8Me���4U]��!8MU�~PNS��`NS�q�u�y�����`���"��Tym���4U���� �"��Tyo�0 �n�� 5m��Y��!8Me��~`NSٸ���Tvn���4����!�a � ��A|�Z 7x`� �� ��@@� d ~0�c�`�A`��`�0 &~@N3�!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �Ǹ �w�E�9� \p\�����A|��\p\� 7��� ������ 7��� ��@ #@�@T� WC��H&`NSټ "$@#�����" ұ��� ��$@#��������T�m���4Ս���!8Mu��0�c���4��[��!8Mu��P̓�~0�`���4^��!8M��V~@̀�A!8Me��A!8M��A!8M���A!Q}��!8Me���4U]��!8MU��`NS����T8o�`�A`��`���4U���!�n��, �� �!8M���~0�`�0 �n�� 5m��Y��!8Me��~`NSٸ���Tvn���4����!�a ���� ć� �p1�����Q�D8 ~0�c�`�A`������T����T�}@��a ���� ć/ �p1�����Q�D8 ~0�c�`�A`������T����T�}`���a ���� �ǫ �p1�����Q�D8 ~0�c�`�A`������T����T�}@��a ���� �< �p1�����Q�D8 ~0�c�`�A`���4�n������T�}`���a bA,@��Uz�P��w@!�^p��x�pr2b` ��kBp�p r2b` �!nBp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<`NSٽ���� ұ��� ����Twm���4�}[��!8Mu�60�c���4����!8Mu��~`��ؼ� @3���!8M�Ӗ`NS����T�m��Y�4n���4�m���4Un���4o���4�yOD ��X��!8MU�~`NSպ���T8o�`�A`��ÿ8v~@HG���!8M���~`NSٴ���T�m��,����T6a bA,@��Uz�P��w@!�^p��x�pq1b` ��kBp�p q1b` �!nBp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<&`NSٽ� ұ��� ����T7m���4�]���!8Mu�v`NSݺ� �X��!8Mu��~`��ظ���Two�� �`NS����T8n��Y�4n���4�m���4Un���4o���4����T5m���4Um����D������T�n���4U��AX�A����D��/����P�s��~`NSٴ��,`NSٹ���T�a bA,@��Uz�P��w@!�^p��x�pr2b` �kBp�p r2b` ��kBp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<`NSٽ���� ұ��� ����Twm���4�}[��!8Mu�60�c���4����!8Mu��~`��ؼ� @3���!8M�Ӗ`NS����T�m��Y�4n���4�m���4Un���4o���4�yOD ��X��!8MU�~`NSպ���T8o�`�A`��ÿ8v~@HG���!8M���~`NSٴ���T�m��,����T6a bA,@��Uz�P��w@!�^p��x�pq1b` �kBp�p q1b` ��kBp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<&`NSٽ� ұ��� ����T7m���4�]���!8Mu�v`NSݺ� �X��!8Mu��~`��ظ���Two�� �`NS����T8n��Y�4n���4�m���4Un���4o���4����T5m���4Um����D������T�n���4U��AX�A����D��/����P�s��~`NSٴ��,`NSٹ���T�a ��A� ����}\�}@��a ��A� 쇙��}\�}@��a ��A� ����}\�}@��a ��A� 䇘��}\�}@��a ��A� ����}\�}@��a ��A� 쇏��}\�}@��a ��A� ����}\�}@��a ��A� 쇎��}\�}@��a ��A� ����}\�}@��a ��A� 䇍��}\�}@��a ��A� ����}\�}@��a ��A� 쇌��}\�}@��a ��A� ����}�}@��a ��A� ����} �u�,a ��A� �G���} �u�,a ��A� �Ȋ��} �u�,a ��A� �G���} �u�,a ��A� ����} �u�,a ��A� �����} �u�,a ��A� ����} �u�,a ���� �Ȉ A�@�}�}�}@��a ���� �H� A�@�}�}�}@��a ���� �� A�@�}�}�}@��a ��A� ���} �u�,a ��A� ��~��} �u�,a ���� �H~ A�@�}�}�}@��a ���� ��} A�@�}�}�}@��a ��A� �}��} �u�,a ���� ��| A�@�}�}�}@��a ���� �H| A�@�}�}�}@��a ��A� ��{��} �u�,a ��A� �{��} �u�,a ��A� ��z��} �u�,a ��A� �z��} �u�,a ��A� ��y��} �u�,a ��A� �y��} �u�,a ��A� ��x��} �u�,a ���� �Hx A�@�}�}�}@��a ��A� ��o��} �u�,a ��A� �o��} �u�,a ��A� ��n��}�}@��a ��A� �n��}�}@��a ���� ��m A�@�}�}�}@��a ���� �Hm A�@�}�}�}@��a ��A� ��l��}�}@��a ��A� �l��}�}@��a ��A� ��k��}�}@��a ��A� �k��}�}@��a ��A� ��j��}�}@��a ��A� �j��}�}@��a ��A� ��i��}�}@��a ���� �Hi A�@�}�}�}@��a ��A� ��h��}�}@��a ��A� �h��}�}@��a ��A� ��_��}�}@��a ��A� �_��}�}@��a ��A� ��^��}�}@��a ���� �H^ A�@�}�}�}@��a ���� ��] A�@�}�}�}@��a ���� �H] A�@�}�}�}@��a ���� �] B�A8�}�}�}0@�c��, a ��A� �\��}�}@��a ��A� Ȉ[��}�}@��a ��A� �[��}�}@��a ��A� ��Z��}�}@��a ��A� �Z��}�}@��a ��A� ȈY��}�}@��a ��A� �Y��}�}@��a ��A� ��X��}�}@��a ���� �HX A�@�}�}�}@��a ���� �X B�A8�}�}�}�}@��a ���� �HO A�@�}�}�}@��a ���� ��N A�@�}�}�}@��a ��A� �N��}�}@��a ��A� ��M��}�}@��a ��A� �M��}�}@��a ��A� ��L��}�}@��a ��A� �L��}�}@��a ���� �L B��@�}�}@H���!<Sa ���� ؈K B��@�}�}@H���!<Sa ��A� ��J��}�}@��a ��A� �J��}�}@��a ���� ��I A�@�}�}4�}@��a ��A� �I��}�}@��a ��A� ��H��}�}@��a ���� �HH A�@�}�}4�}@��a ��A� ��?��}�}@��a ��A� �?��}�}@��a ��A� ��>��}�}@��a ��A� �>��}�}@��a ��A� ��=��}�}@��a ��A� �=��}�}@��a ��A� ��<��}�}@��a ������ ��< A�@�}�}�}@NS��!�a � ����� ��<B�@�}�}�}@NS��!�a ���� ��; A�@�}�}�}@��a ���� ��; A�@�}�}�}@��a "D,��� �����A|Ě\`�� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|ȓ\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa ���� ��: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� �I: A�@�}�}�}@��a ���� ��N A�@�}�}�}@��a ���� �8 A�@�}�}�}@��a � ����� �H8B�@�}�}�}@NS��!�a ������ �H8 A�@�}�}�}@NS��!�a ���� �G/ A�@�}�}�}@��a ���� �G/ A�@�}�}�}@��a "D,��� �����A|К\`�� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa "D,��� �����A|��\`@� #�`&�t��@�A��A86~`��Է���T����T�}��T�}�}~@���AS,�Oa ���� �I. A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� ��- A�@�}�}�}@��a ���� �HO A�@�}�}�}@��a ���� ��+ A�@�}�}�}@��a � ����� ��+B�@�}�}�}@NS��!�a ������ ��+ A�@�}�}�}@NS��!�a ���� ��* A�@�}0T�b�0 !I�}@��a ���� � * A�@�}0T�b�0 !I�}@��a ��A#�` &�4��}0T�b�0 !I�}04�a��, a ��A#�` &�4��}0T�b�0 !I�}04�a��, a ���� � ) A�@�}0T�b�0 !I�}@��a ���� ��( A�@�}0T�b�0 !I�}@��a ���� � ( A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� ,g4A�@�}0T�b�0 !I�}p�a��, a ���� ,e4A�@�}0T�b�0 !I�}p�a��, a ���� �� A�@�}0T�b�0 !I�}@��a ���� �  A�@�}0T�b�0 !I�}@��a ���� �� B�A8�}0T�b�0 !I�}p�a��, a �ȈA� � � ����@�@ �}0�c���4�u��T~PNS�~PNS��}@��a �ȈA� ��� ����@�@ �}0�c���4�u��T~PNS�~PNS��}@��a ;J,@ �� �� ������a��pC�`0�0���� ��%�1K� 7�2F0bp p�C���#�`'?�,�,�1PAD!��@y(�p�$��A8V~`��Խ� ��A!0OM���!8̀Ӷ~`N3൝�,7m�� ���,wo���<vm���4�q�u�y���,a 9J,@ �� �� ����ܐQ�$� E��,�@#�`�#8���p�Q��,Ca#�`�#9�$�Lj�� �H-�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~`N3ؼ��� 6~@̳���!8�`�f~`��ص� ��AX�A���!�b�V~P�S�&~@��a 9J,@ �� �� ����ȐQ�$� E��,�@#�`�#3���p�Q��,Ca#�`�#4�$�Lj�� � -�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~@N3��!0�n��,�][�� 0�q�u���,�n���<un���4�͛��!8�`�&~@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#.���p�Q��,Ca#�`�#/�$�Lj�� �� -�,�1PAD!��@y(�p�$��A8F~`��Էy�3�~@N3��!0�n��,�][�� 0�q�u���,�n���<un���4�͛�!�b���4��a 5J,@� ���,C #�`�&D�$� ���,�@#�`�'d� � F� ����~�2Kp���~�P2Kp TD!��@� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�!D�$� ���,�@#�`�"d� � F� ����~�2Kp���~�P2Kp TD!��@� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�'�C�$� ���,�@#�`�'�c� � F� �����2Kp����O2Kp TD!��@�� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 5J,@� ���,C #�`�'�C�$� ���,�@#�`�'�c� � F� �����2Kp����O2Kp TD!��@�� �1K� TP ��}0�c�`���4�u�3v~`N3Զ��� �m��,Kn���<���,����~@��X��!�R�a 7J,@ �� �� �����O1K� 7x� �����1K� 7�2F0bP |R?�,�1bP |R?�,�1PAD!��@y(�p�$��A8~0�c�`���4�u�3�~`N3Զ��� �m��,Kn���<���,����~@�����!�R�a 7J,@ �� �� �����O1K� 7x� �����1K� 7�2F0bP |?�,�1bP |?�,�1PAD!��@y(�p�$��A8~0�c�`���4�u�3�~`N3Զ��� �m��,Kn���<���,����~@�����!�R�a � �X�@�}�}@0�@��!8Ma � �T�@�}�}@0�@��!8Ma � �`�@�}�}@0�@��!8Ma ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a ���� �I�A�@�}0T�b�0 !I�}@��a ���� ���A�@�}0T�b�0 !I�}@��a �ȈA� �I���}@NS��D�`��, a �ȈA� �����}@NS��D�`��, a �ȈA� �I�� ����@�@ �}0�c���4����T����T�qOD �}@��a �ȈA� ���� ����@�@ �}0�c���4����T����T�qOD �}@��a ��A� � ���}0<Sa ��A� �����}0<Sa ��A� � ���}0<Sa ��A� �����}0<Sa ���d�@�}<a ���d�@�}<a ���d�@�}<a ���d�@�}<a ���p�@�}pD� �a ���p�@�}pD� �a ���p�@�}pD� �a ���p�@�}pD� �a ���� ̇� B�A8�}`8E!�q )�}@�Da ��A� ����} a ���� �J���}0�d�2a ��A� ����}@0��a �pCPa0bp ��6�� Ap�A8�}@<1���a A,@ � ������ ���B0���}@<1���a �pCPa0bp ��6C� Ap�A8�}@<1���a A,@� ������ ���B0���}@<1���a A, 4�\W ��8�C:�C9�C8��:��8́���} #D�` a &A,@��3��<��9���9��������A���������������6!P�\Ď��| d �}PX�0F~ 8�� ұX��!EB 4�q ��� Qa 'A,@��3��<��9���9��������A���������������6!P�\Ď��| d �}PX�0&~PHT�#�}pH�P a�CDF~@8����A!��a #A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@�}PX�0&~0H�b�CD�}P �2~0HTa $A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ �}PX�0~PHT�#�}0T@d��@,`��t,>a %A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d �}PX�0F~ 8�� ұ��P�u�L�� a 'A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d �}PX�0&~PHT�#�}0T@d��@,`�����ұ�a &A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d �}PX�0F~ 8�� ұ��P�u �& )&~0HTa 'A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d �}PX�0&~PHT�#�}0T@d��4� H��N�#6~PH��#a &A,@�A5��<��9���9��������A���������������6!P�\Ď��� d �}PX�0F~ 8�� ұX��!EB 4�q ��� Qa #A,@Ts�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@�}PX�0&~0H�b�CD�}P �2~0HTa %A,@�A5�<��9����;܃;��8́��������� }`l`l l 6!P�\Ď��� d �}PX�0F~ 8�� ұ��P�u�L�� a &A,@�A5�<��9����9�C>��8́��������� }`l`l l 6!P�\Ď��� d �}PX�0F~ 8�� ұ��P�u �& )&~0HTa UA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�}pH�P a����m��t,>b���HLDH�2Ֆ~@8�����!Q��Ԇ~PH��#V~��L�}0T@a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d��D>R���N�#>b��t,>�#V~��L>a OA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~PHT�#�~`H��#��(��D�D-Sm��D>R��A!���AHLDH�2��P�u�La QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`��D>R���ұ�����HLDH�2�a TA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�~P8���f~��L��ұ��m������Hm��t,>b� 1!Q�d�CD�}P �2a WA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�~`8����� �H�#�~pH��#>b� 1!Q��#a UA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~PHT�#�~P8����~`H��#��(��D�D-Sm������Hm��t,>b� 1!Q�d�CD�}�,@C���a XA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}�,@C���X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a WA,(@��3��<��9���9��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m�� %��~�HT�#>R�"����m� 1!Q�T���!Q�����ұ���X�AHLDH�2��P��N�#>a QA,'@=s�A��:�;�A=��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;�1�� B`�����| ����@~p#G�`0��#F�`�'K@d�}PX�0�~�HT�#>R��"����m� 1!Q�T���!Q�����$��D�D-�q Y�A1����!���a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m��D>�#�� ұ����f~��L�����X�AHLDH�2��!����q Y�A1�X���D>�#a WA,(@��3�<��9����9�C>��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPd�}PX�0�~p8����m��D>�#�� ұ����f~��L�������!�����$��D�D-�q Y�� a�b�����a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d��D>R���N�#>b��t,>�#V~��L>a [A,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����uR$�@C�A"�����X��D>�#>b� 1!Q��#>b�CDv~�HT�#>�#�~�8���>�#�~�H��#�����8��D�D-S�#>a QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0f~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`��D>R���ұ�����HLDH�2�a TA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`P;�1�� B`�����| ����@~p#G�`0��#F�`p;J@d�}PX�0�~�HT�#�����$ұ������4��D�D-����q Y�A1���A"Q��������"���>�#V~��L���a WA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�~`8����� �H�#�~pH��#>b� 1!Q��#a ZA,(@��3�<��9����;܃;��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����� N�#>�#�~�H��#>�#V~��L>�#�}0T@d��@,`��D>�#>b�����#>b��t,>b������HLDH�2�>�#a XA,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}�,@C���X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a [A,(@��3�<��9����9�C>��8́��������� } l l l d�\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`P;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`p;LPd�}PX�0�~�HT�#����� N�#>�#�~�H��#>�#V~��L>�#�}0T@d��4� H��$������$N�#�����(ұ���#>b� 1!Q�T���a A,@�& !P�\Î$����L���&@�@ �}PX�0F~ 8�� ұ���!EB 4�u ��� Q�q )a A,@�& !P�\Î$����L���&@�@ �}PX�0&~PHT�#�}pH�P a�����ұ��u ���a A,@�& !P�܈A� �J� �a� �A8 �}PX�06~0H�b�CD�}P �2�}@0����� Qa A,@�& !P�܈A� �J� �a� �A8 �}PX�0&~PHT�#6~PH��#�}0T@d��@,`�H a A,@�& !P�\Î$����L���&@�@ �}PX�0F~ 8�� ұX��P�y�L�� ���a A,@�& !P�\Î$����L���&@�@ �}PX�0&~PHT�#F~@8����A!��X��P�y�L�q )a A,@�O6!P\Ď$�����B$H0�� �}PX�0V~ 8�� ұX��P�q )�}�,@C������ Qa A,@�O6!P\Ď$�����B$H0�� �}PX�06~PHT�#V~@8���A!��X��P�q )�}�,@C���a #A,@�& !P�\Î�A~� 2b� ��2J�0�#�`�+'d�}PX�0F~ 8�� ұ���!EB 4���,�m�CD&~0HT`�H���,a A,@�& !P�܈A� ��# �`p+.��!�&��A� ��� �}PX�0v~`��Է� ұX��P�y�L�q )&~0HT`��, a "A,@�& !P�\Î�A~� 2b� ��2 �0�#�`�+'d�}PX�0F~ 8�� ұ��!�R��}0T@d��@,`�H�� X�!�a #A,@�O6!P\Ď�A~�L2b� �3K$�hB�����L�A8�}PX�0V~ 8�� ұX��!�R��}0T@d�H�y �& )6~0HT`��, a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0v~PHT�#�~P8����~`H��#��(��D�D-Sm��t,>b�H�yR$�@CX��D>b� 1!Q�d��D>R[��Pa MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d�H��N�#>b��t,>�#V~��L>b��D>R�a FA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~PHT�#�~`H��#��(��D�D-Sm��t,>b�H���Hm� 1!Q�d�CD�}P �2a HA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`�H��,��D�D-����!����� �H�#a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~PHT�#�~`H��#��(��D�D-Sm����m��t,>b�H���Hm�����$��D�D-�u ��A1�a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�}@0��X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a JA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~PHT�#�~P8����~`H��#��(��D�D-Sm��t,>b�H�y �& )�~`HT�#��$��D�D-��N�#�}0T@a MA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}@0����� a�b�����X��!�����,��D�D-��X�"Q���>a MA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�'O`d�}PX�0f~��L��������b���������D>�#�yR$�@C�"Q���Hm��t,>�#��$��D�D-�u ��!���a GA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ~�E�@�}PX�0f~��L��������b��D>�#�� ұ����V~��L�}0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F���i7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�'O`d�}PX�0f~��L��������b���������D>�#�� �����~�H��#>b[�AHLDH�2Y��P�y�L��ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<�vsy��`n v@`�dl@q�ld {p�<�A��#E�`�;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ~�F�@�}PX�0v~��L��������b��4� H��N�#>b�������~�HT�#>R��"����m� 1!Q�d�CD�~pH��#>a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�}pH�P a��D>�#�~p8���>b��t,>b���0��D�D-S�#�}0T@d�H��N�#>b��t,>�#V~��L>b��D>R�a PA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`p;N`d�}PX�0�~�HT�#����yR$�@C�A"�����X�AHLDH�2���X��D>�#>b�CD�}@0����A"Q�������A�D>r���X��"���>�#f~��L���a HA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0v~pHT�#>b��t,>b���0��D�D-S�#�}0T@d��@,`�H��ұ���X��HLDH�2��� �H�#a JA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`���$����L� K0��0!P(܈A� ܊�D �� 0b`T ��E�@�}PX�0�~�HT�#�����$ұ������4��D�D-����u ��A1����b��D>�#>b��t,>b������HLDH�2�>�#a MA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0v~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}P �2�}@0��X���D>�#�~pH��#>b� 1!Q��#�~�HT�#��a PA,@�Y7�P�����`t�@p�d��`@r�G��<�;vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`P;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`p;N`d�}PX�0�~�HT�#�����$ұ������4��D�D-����� N�#>�#�}0T@d��@,`�H��$������$N�#�����(ұ���#>b� 1!Q�T���a MA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~pHT�#>b�����#�~�H��#����HLDH�2�>b�CD�}@0����� a�b�����X��!�����,��D�D-��X�"Q���>a PA,@�O�usy��`n v@`�dl@q�ld {p�<�A��a7WP�����`tdl�@q�d ��F���#E�`P;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@�}PX�0�~�HT�#�����$ұ������4��D�D-����� N�#>�#�}0T@d�H�y �& )�~�HT�#>�#�~�8���>�#�~�H��#�����8��D�D-S�#>a A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ����!8MU�&~@NS�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L�q ����HLDH�2�6~��L����T5n���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4M6~��L��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������0n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������0n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������pn0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������pnPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������pn0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������pn0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������pnPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������pnPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������pn`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������pn`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0n0q``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0n0v@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,T� q7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,� }7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8�}0<Sd���4a A,t�\ah�@np������0nPq``@p�`� d��D��#E�``.��A8�}0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@�}0<Sa A,$�\ah�@np������0nPv@`@p�`� d��D��#E�`.��A8�}0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\ah�@np������0n`s `@p�`� d��D��#E�` 3��A8�}0<Sa A,d�\ah�@np������0n`v@`@p�`� d��D��#E�`P3��A8�}0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,T� q7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a OA,� }7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d��_�_�H#�d���4�m��A���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4M6~��L��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me��_�O�H#�d���4UM[�A���>�HD4a OA,D� �7W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L�q ����HLDH�2�F~@NS���HLDH�2�V~`NSո���T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a 2A,� �7�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� �7�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,D� �7�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�F~������4Mf~������4M&~��L��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,T� �7�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#E�` 3��A8�}0<Sa A,d�\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#E�`P3��A8�}0<Sa 2A,4� �7�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� 8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� 8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,T� q7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a OA,� }7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�;�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d���4�m��A���>�HD4Y�A���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`@>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�``>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�&~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8�}0<Sd���4a A,t�\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#E�``.��A8�}0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#E�`B�@�}0<Sa A,$�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`.��A8�}0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �~��L~��L�q ���!8Me���4UM�A���>�HD4Y�A���>�HD4a OA,D� �7W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!�~������4M~��L��(��D�D-�n� 1!Q��[��!8MU��}0<Sd���4U��AHLDH�2�A���>�HD4�!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� �7�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`0?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� �7�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`P?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,D� �7�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`p?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,T� �7�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,4�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#E�` 3��A8�}0<Sa A,d�\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#E�`P3��A8�}0<Sa 2A,4� �7�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a EA,�� 8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8~��L�q ����HLDH�2�6~��L��4~!>�#�DD��4~!��#�DD��$��D�D-��4~!~�#�DD��4~!��#�DDa 2A,�� 8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�` B�0�� B0�P�lC �~��L~��L�q ���A���>�HD4��A���>�HD4a A,�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #G�``B�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`�BC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�` CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#F�`@B`8�}0<Sd���4�u�Pa A,T�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�`@6� `8�}0<Sd�E,a A,t�\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�``6� `8�}0<Sd�E,a A,�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�`6� `8�}0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#G�`@C�!~0U�B~!~���d���4n���4�q ����T E����O\S�u�Pa DA,t�\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�``C�B B��@~0U�B~!����d�S,���>qM LF~PNS�V~PNS�6~@NS���!8MU��}0<Sd�E,a�S,���>qM L~0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`�C�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�`FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,T�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�`@:� `8�}0<Sd�E,a A,t�\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�``:� `8�}0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�` FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�`@F�A B��@&~0U�B~!����d��3E�}PT�B�}0U�B~!>���d�S,���>qM L~0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�``FC! �}0<Sd�S,���>qM L~0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��} �q�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��} �q�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��} �q�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��} �q�c��t �q #2"�\�.�E�^�.���`�.���b�/86��d�/XF�f�0x� �h�0�� �j�0�6�l�1�F�n�1���p�1�)�r�287-�t�2XG8�v�3x�:�x�3��=�z�3�7I�|�4�GL�~�4�7O���5@Z���58�\���5X�_���6x0k���6�@n���6�0y���7��|���8�����98`����:XP����:x௃��;������;��ȃ��<�0؃��=�0郠�?�����?8����@X����Ax���B��.���C��?���D��X���E��[���E�k���G8 ����Hh ����H������I� ����I(�����Ih ����I������I� ����J�����JH ����J������J�0����JЯ���KHP����K����K������K����KH�����L�Ʉ��L��ʄ��L( ̄��LH(�̈́��L�(0τ��M�(�؄��M)@ڄ��MH)�ۄ��M�)@݄��M�)�ބ��M*P脢�NH*�鄦�N�*p넪�N�*0턮�N+��NH+0����O�+�����O�+0����O,�����OH,�����O�,���P�,� ���P- ���PH-� ���P�-P���P�-����Q.`���QH.����Q�.`���Q�.����Q/����R(/`)���Rh/�-���S�/`:���S�/<���S�/�=���S�/@?���T(8 I���TH8�J���T�8@O���U�8�[���U�8`]���U�8_���U9�h���V89�j���Vx9`l���V�9�n���V�9`x���W:@z���WX: |���W�:~���W�:����X;�����XX;�����X�;�����X�;�����Y<�����YX<`����Z�<ૅ��Z�=@����[8> ʅ��\�>م��]x? ���^�?����^�?P���^H0텂�^HH�_�H�����_�H�����_I�����_HIp����_�I0 ���`�I� ���`J� ���`(J ���`HJ0���`hJp���a�J����a�J@���aK����a8K����aXK(���bxK�+���b�K�8���c�KP=���c�K`J���d�KpO���eL0\���e8L l���gXL�~���hxL`����i�L`����k�L�����l�LPچ��m�L����oM����p8Mp���rXM�.���s�M`>���t�M�I���t�M@M���t�M�X���u(N]���uHNpi���vhN�x���w�N�����x�NP����z�N����{�N྇��|OP؇��}(O0���~HO������hO� �����O���͂�O�.�����O�9�����O`=����X�H����(X�X����HX�_����hXo�����X�{��؇�X �����X������XЛ����Y����(Y0�����HY������hY�������Yp������Y������YP������Y�����Z�����(Z� ��ݐHZ��БhZ������Z*�����Z�.�����Z�>�����Z�M����[ ]���([�h����H[�o����h[`|����[������[@���Θ�[�������[������\������(\�����H\������h\�����\������\����ޞ�\����џ�\����]p ���(]���ڡH]P����h]�*��Ȣ�]0.�����]�9��ˣ�]�I��Ȥ�]�X����^�_����(^�l���H^�o����h^�|�����^�������^Л�����^���˪�^`�����_������(_p���ŬH_P�����h_0������_�������_`������_������_� ����h��α(h�����Hh,����hhP<�����hL�����h�[��ٵ�hp_�����h o����i@|���(i �����Hi���ݸhi�������i0������i������i�������i�����j������(j������Hj �����hj�������j� �����j@�����j�(�����j0.����k@:����(kP>����HkPJ����hk�Y�����k�h�����k0o�����k |�����k �����l@�����(l������Hl0�����hl������l������l�������lp������l������m������(m������Hm�����hm� �����mp�����m`�����m`+�����m�8����n�?����(npN����Hn ]����hn i�����n�o�����n�|�����n�������nЌ����oИ����(oP�����Ho�����ho�������o�������o�������o�������o�����x������(x`����Hx` ����hx�����x������x,�����x8�����x<����y�K����(y@Z����Hy�h����hy�m�����y�y�����y�����y@������y�����z������(z������HzP�����hz@������z`�] ����threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_53_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z6__shfliii_Z6__shfljii_Z9__shfl_upiji_Z9__shfl_upjji_Z11__shfl_downiji_Z11__shfl_downjji_Z10__shfl_xoriii_Z10__shfl_xorjii_Z6__shflfii_Z9__shfl_upfji_Z11__shfl_downfji_Z10__shfl_xorfii_Z6__shflxii_Z6__shflyii_Z9__shfl_upxji_Z9__shfl_upyji_Z11__shfl_downxji_Z11__shfl_downyji_Z10__shfl_xorxii_Z10__shfl_xoryii_Z6__shfldii_Z9__shfl_updji_Z11__shfl_downdji_Z10__shfl_xordii_Z6__shfllii_Z6__shflmii_Z9__shfl_uplji_Z9__shfl_upmji_Z11__shfl_downlji_Z11__shfl_downmji_Z10__shfl_xorlii_Z10__shfl_xormii_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! � !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L&� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��E䔁�ȡ��TT����*�PRE�Z� W5e�(�S�AU�_~��DU!�!ȪR@X�)H�R��/@\�ȫR�@`����4@d�� �,��w�EiQE(c-b��(Bn�[�G����"E��]TYRK�"�(�"���E�A���/B�hF�E�c0"�)B ��a�HI��L�� c��RR#Ȩ�"T#MV�_�ʊ@�Pt S�a2#�(�"$�uF����2\р$Z���"� W�u�V�+�P+�k�A��� �� ��pE\~�ke��.E�2\q�%$[��+�� W�% �V�+C�p+���A��� �!��pEb��oe���L�2\�)$\���"� W$� W�+�"��+�� Cʕ� Β!��p�g�sS�T0�@ �1�@F�"Xg]W��+�u��vE�n-��E��-�w�Q��� q�w�Q���"�`�]�^�Ӌ�3������"X�W����� �a4_�K��+�u��}E��1ʯ�IF��_��_f�!~��_� g��!�~F��  q�Z@� �H�B\�w�Ÿ��;��r�W�a1�� �$,�}`QX�+��W @� �4,���q�w����1 �q�cb!���H�B\��/��Ÿ��_~��2�W|F9�",w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �Q��0;�s � �e�p�c0 � ���`��q�b0�($r�8H1�`��`� @���\0S  ��L.�)��'���v@~� Ƒ��@;����P�` �|�q�b0�(�r�8X1�`$v�`� @�ڿ\0W  ��b� ���@;�� r�8`1�`d�A.G,�~5���` ���`� @����c��v@��r�c0���Y@t  ��x@ ȑ��@;�qd9�1�`T��+G-�FPp��` �P, �`� @��I����v@�)��q�b0�hOW0]  ���� Ʊ��@;��\�8x1�`TƂ+G/��Yp���` �Ph �`� @�zq����v@�.��q�c0�h�W0q  ��� �1��@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��_+0D*Y��H4K@�@��l �0"�-�C��%"v`�d���$ �З���!��S=�0Dja��H=LD�@�ɍ��0"�1!�C�X&��`�4�Ą$ �왘V�!RJ�K�0D�i�� �HjM<4@�)� �&"�6�C��&�� `�d�D� ����!҉RY0D�q�A �HhN@k@� � �-"�:�C�\'"� `���t �������!��S_0D { �HqOD�@�I� �4"�>1�C��'�� `��� �\��f��!��m0D�â� �H�XX�@�I �7"�cq�C��,"� `���� �䲘���!Ri�{0D����H�Y �@��= )>"�g�C$-�� `��� �ƴ`���!қ�|0D�ӂ��H�Z �@�)V g>"�j��C�u-�� `���3 �J�@���!R��|0D��"��Hl[L�@��o�h>"�n1�C��-�� `��4 �B�p���!� �|0D��™�Hm\@�@��� g>"�r�C�].�� `���E5 �F�����!�M�|0DZ납�Hw]0�@�i� �>"�v��C��.�� `��ޅs ��p���!R��}0D��b��H>^(�@� ͋e?"�y��C$>/�� `�tꅲ@ �b�`���!R�I~0D2����H�^ �@�I� f?"�|��C��/�� `����@ ���H���!R��~0D��"��Hy_ �@�)�$?"�~��C$�/�� `���ű@ �ĿH���!���~0D�����H�_�@�����?"��q�C�4�� `�$��" �r� B��!R�0D*C��Hmh�@�I��?"��a�C�P4�� `���F�@ �\�@F��!�-Ĉ0D�E)�H�h(%@�� �D"ѣ��C�~4�� `�D��@ �P�H���!RL�0D�I#�H`i#@��, EE"��Q�C$�4�� `����@ ���XX��!�j�0D�MC)�H�i%@� < �?"��Q�C��4�� `�D��@ ���@���!��0D*Q��H-j�@�IF��?"�A�C�5�� `�T�F�@ ���@���!���0D�SC�H�j#@��T��?"��A�C$Y5�� `���F�@ �~�@���!ҹ�0DbW#��H�j�@�i_��D"��q�C��5 `����"@ ���@���!R��0Dr[#��Hwk�@��o �?"��Q�C$�5�� `�4���@ �r�H���!���0DB_#��H�k�@��~��?"��a�C$6� `�Æ1"@ �l�@���!��0Dc���Hjl�@�ɍ �?"ٱQ�C�=6�� `�T���@ �X�P���!�-�0D�e��H�l$#@�i� gD"����C��6� `��ӆ2"@ ���h`��!\�0D�k#��H�m�@�ɴ EF"��q�C��6 `�$�"#@ ���H���!�|�0D�o��H!n�@��čDF"��a�C�7 `����!#@ ���h���!Ҝ�0D�s#�H�n#@�iՍ�F"ѺA�C$\7� `��F1"@ ���HF��!һň0D�w#��H�n�@�i��?"��a�C$�7�� `����@ ���H���!���0D�{#��Hyo�@��� �F"����C$�7 `�d��a#@ ���0���!���0D����H�o �@����G"��1�C�<�� `����@ �d�0���!�0D�����Hbx 8@�� �?"����C�R<�� `�t���@ ���P���!�;�0D��c��H!y �@�)%��?"���C��<�� `���@ ���H���!�_�0D*ͣ��H�y <@�I7��G"��A�C��<�� `�4� ���@���!҈�0DB��H0z`@��FL"�聀 C$3=0 `��& ���@���!���0D2��H�z <@��V�G�"���C$q= `���@ ���@���!��H|0D���H&{`@�ieL"��a� C��=0 `��& ���@���!R��0D���H�{ `@�)udD"���C��= `�Ի�# ���@t��!R���0D�߃ �H(|<b@��FL�"��� C$9>1 `��G$& �d�h���!�/��0D�� �H�|Dd@�ɥ��L�"��� C$�>1 `�d��#& �J�`���!Rl��0D� �H�}<b@�i�FL�"��� C$?1 `�$��#& ���`���!R���0Db�� �H�~<b@���FL�"��� C��?1 `���#& �t�X���!R���0D��� �H�<b@���FL�"��- ���` �H�@ C�D���!� "��0DC�1 �Hp�Df@�)��L�"�"� C$pD4 `��ȡ&0 ��)���!�>"���0D I�` �H&�`n@��'N�"�%�� C$�D8 `�d�'@ ������!�m" �0D�M$� �H�$<@�)>��G�"�'�� C$E `���H�#@ ��Ix��!R�" �0D�S��H��$<@��V��G�"�+��C�tE `�$��G' �`y���!��"�~0Dr[�� �H}�<�@��u��N"�/�C��E�� `����@ �v����!�#��0D:e�� �H��8x@�i�O�"�3�� C�F<; `���ȃ'@ ��y���!�^#�0DRm�� �H��pz@����O�"�8�� C�G> `����'@ ������!Ҫ#�0D�u�� �H�<|@� ߑ�O�"�<�� C��G>? `�D�� C$�G2 `�4�C&@ ��y���!� &��0D���1�Hk�8f@�)��L"�bҘ C�ZL3 `�4� c&@ ��1y���!�?&��0DZ��1�H:�8f@� -��L"�e� C��L3 `�D��c&@ ��3q���!|&��0D���1�H,�8f@�IG�gT"�iŒ C�:M,1 `����$&@ �z5����!�&��0D:���H=�Hb@��m�KL"�n2� C��M,3 `��� e&@ �F8����!�'��0Dz��"�H��Hd@�間�L"�s2� C��N�Q `�tӉ4*@ ��:�F��!h'Ө0D����H�\b@� �KL"�xr� C�6O.1 `�D��$&@ �n=����!һ'��0D���H:�Lb@���LL"�~B� C��O.3 `��Ie&@ �JP����!R*��0D�C�"�H��Ld@���L"գB� C��T,1 `����$&@ ��R����!j*��0D�M�2�H�Pf@��D��L"�R� C�8U,1 `�t��$&@ �rU����!�*��0DY�2�H9�Pf@��m��L"��R� C��U,1 `����$&@ �BX����!+��0DZc�2�H��Pf@�����L"��R� C��V,1 `�tӊ$&@ ��Z����!h+��0D�m�2�H�Pf@�����L"ѸR� C�4W,1 `���$&@ �b]����!�+��0D�w��H1�Hb@�i�KL"�2� C��W���!�+�@���l `��˴0D ��Z"��"-@ �Tq��H�L C�z\.4 `�Ē �&@ ��r����!^.�0Dj���H�Hb@��>�KL"��2� C�],3 `�T��d&@ �Pu����!ү.��0D����H)�Hb@�ig�KL"��2� C��],3 `��� e&@ ��w����!� /��0D���Hp�Db@�)�KL"��"� C�t^*3 `��ϋd&@ �`z����!�Y/��0D���H��Db@��KL"��"� C�_*3 `����d&@ ��|����!R�/��0D����H�Hb@�)�KL"��2� C��_,3 `���d&@ �h����!��/��0D����H5�Hb@�� �KL"�!3� C�Xd,3 `�t� e&@ �������!�L2��0D:KF)�Hq� l@�)/�T "�&3� C$�d(5�`�d�L�&@ �N����!��2�0DRS&��H{�d�@��V�("�+��  C$e�8 `�� v*@4 �Җy���!�2ة�0D�]�K�H��|�@�Ʌ�0H�Ho�x�@�����"�3��C��f�Z `�d� W  �D�Y���!Rk3�|�0D�mfZ�H��X���i��U"�8�� C�;g�U `�d�̵*@< �z�����!R�3�0Dy��H0�@�@� �)>"�=I �H�a���!�3�|0D�}��H��<�@�I�i>"�`#�C$l�� `��M4 �@�ad��!+6��0D��F��H��D�@���V"�d�� C$�lZ `�T��C+ �貑h��!�i6�0D��&��H��D�@�I?�V"�h�� C�m$[ `�t�Md+ ��ah��!�6 �0D����H��<�@��]�V"�l#� C$�m"Z `�4�MD+ �趙p��!��6��0D��f��H��X�@�� W"�p�� C�:n0\ `���ͅ+ �ȹ�p��!�>7�0Dr��� �H<�8�@�I��W"�v�� C$�n.^ `����. �D�����!R�7�0DZ���H��`�@�)� \"�{s� C$�o.p `����$. �侱���!�7��0D���H��L�@�I� \"��c� C�9t,p `���. �������!R>:�0D�I��Hg�,�@�I.��\"���� C$�ts `�4�Β.D �|�Y �H��,�@��>�]"��� C$u"y `�T�NT/ ���y���!R�:Ͼ0D�U���H��,���i^�%]�"���@ �R�Y���!�:Q�0D*['"�Hv�H'@� uIe"�� C$�u � `����53 �`�Yj��!�;��0D2c'��Hw�D=@� � l"�Ð C$svr `�$�c.D ���a���!�J;L�0D�i��"��Ð C$�v"v `���N�. �`ۑ���!�x;R�0D�o��H$�@�@��Ɲ�_"��Ø C�:w�t@`��0Dju�!�H��H!@�i��d"��3� C$�w&� `�4�N�2 ��މ`��!R�;��0D�}���H��07@���Ig"��#� C$|&� `���C. ���a���!�(>��0DzŇ1"�H��0�@�� `�4�C. ������!L>ѻ0D �G��Hs�H�@��4_"��� C��|* `���c.H �L�a� �!��> @��G�\"��#� C$>}$� `���t2 ����T��!�>Q�0D*�'��H6�\3@��m�f"���� C��}$� `�t���3 �������!�> �0DB�!�H4�0�@� ��\�"��ä C$<~��!)? �0D��'b�H��D�@�I�I^"��#� C$�~ | `�d��/ �������!�j?�� 0D��I$�H��0C��~r `��ߏ2 �Z��H��!ҏ?��0D��gR�H��D-@��֟f"��s� C$�� `���s3 �l��t��!�?R�0D��g�H��0�@�)��\"��Ø C��s `����.D �Rb �H51�@�) ��]"�!� C�Q�$y `�T��T/ ������!�=Bо0D:I���H< 1��� -!&]�"�%�@ �@b���!kBR�0D�MH"�H� M'@�iD�Ie"�(� C�3�"� `����53 �^bj��!ҮB��0D:WH��H� I=@�ie� l"�,Đ C$��r `�d�c.D �Db���!��BL�0D�]��"�/Đ C$��"v `�4�P�. �h����!�CR�0D�c��H� A�@� ���_"�3Ę C�|��t@`�T�0D�i�!�H= I!@��!�d"�64� C$چ&� `�t�P�2 ���`��!R�C��0Ds���Hl17@� �!Ig"�:$� C$^�&� `���#6 ��b���!��C �00D�y�!&�H?1f��i�!m"�=Ĉ C�ч$� `�T���6 ������!��C�0Dj�(��H>Et@�� #�n"�bĐ C�X���`�ԋ�6 ��1b���!R=F�0DB�h��H;Q|@��-#�o"�f$�C�ڌ$� `�t�F: ��3bL��!ҊF �0D��hR�HjM�@��O#�u"�jĈ C�^�� `���C6L ��5b�� �!R�F��00DjوA�H91b@��l#Im"�m$� C�ԍ&� `�Ļ�7 ��7����!G�0D��Ȳ�Hg1d�i�#�l�"�qĠ C�U�� `�t�ф7 ��9����!R?G�0D����HeI�@��#It"�v��C���� `����: ��;�T��!�G�0D��r�Hs1b@���#Fl"�zĐ C�[��``�4�c6L ��=b���!ҾG��0D:�HR�H9Il@�i���m"�}4� C�؏"� `�$�QD7 ��?����!R J �@0D�A�1(�Ha(1h@�� %Fl"�4� C$V�&� `���7 ��Q����!�IJ�0D�II�Hk)a�@�i4%�t"��ĠC�ݔ&� `����: �BT�\��!R�J��0D S��Hm*1d��)O%�l�"��Ę C�X�� `�ԫ#6 ��U����!ҾJ�0DjYir�H`+Mp@�in�Hn"��� C�ڕ,� `���C6P ��Wb� �!�K �0Dza��H;,Mx@�ɍ�Io"��D� C�Z�(� `��Β: ��Y�D��!RKK�0D*k�1�Hq-1�@����Iu"��4�C��(� `�tߒ5 �Z\����!�K�|0D�s�$6���$2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B� b D �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �align�+0��a0��a0�p�0���0�0�0��a0�`�0��0�0�0���0��a0���0���0���0�0�0��a0�`�0���0� �0���0���0�P�0���0�@"1�p#1�&1�0'1��)1�+1��x1��a0��y1��~1��1���1���1���1���1��..6�//6�0/06�`/16��/26��/36��/46� 296�P2:6��2;6��2<6��2=6�3>6�@3?6��3b6��3c6�6d6��.l6�/m6�0/n6�`/o6��/p6��/q6��/r6� 2w6�P2x6��2y6��2z6��2{6�3|6�@3}6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.&7�/'7�0/(7�`/)7��/*7��/+7��/,7� 217�P227��237��247��257�367�@377��3:7��3;7�6<7��.d7�/e7�0/f7�`/g7��/h7��/i7��/j7� 2o7�P2p7��2q7��2r7��2s7�3t7�@3u7��3x7��3y7�6z7��6�7��a0��6�7��a0��6�7�7�7��a0�07�7�P7�7��b0�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6 � �M#s#��B݌`0�p7$� �M #{���B߬`0��7,� �N #���B�`0��:2� �� #�C�����`0��6=� ��#q���܀a0�P7a� ܍#ys���ޠa0��7i� ��#������a0�P:m� �#������a0� 3 D �0�0�`� 3 Ip�0(�1ð� C03 N��0<3�� �D3 S�0PA4�P� �D3 W��0`A4Ð� �D3 [�0pA4��� �D3 _3 a�� �`0�0�0�A3 e�� �`0�p�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�A��0�A�0�A�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�D��0�D��0�D�0�D�0�D �0�Dp�0�Dp�0�D��0�D��0�D�0�D�0�D��0�D�0�D�0�D�3 0�� �L11�0M�0�D@3 6�� N71Ð�K�0�D3 ;�� O41��M�0�Dp3 ?�� X41��M�0�Ep3 c�� Y11�PAL�0�E@3 g�� Z71Ð�M�0�E�3 k�� [11��M�0�E@3 o�� \71�M�0�Ep3 s�� ]/1�PAL�0�E3 w�� ^41Ð�M�0�Ep3 {�� _11��AL�0�E@3 �� h71��M�0�F@3 ��� i71�P�K�0�F3 ��� j41ÐM�0�Fp3 ��� k/1��AL�0�F3 ��� l41��M�0�Fp3 ��� m71�P�M��h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�������������������������������������������������������������������������������������������������������������������������������������������������������H`��q��kK�s�+��K{s%�������\�����������FQ ۸ �� �� �� �� ���(�8�H�X�h�x���������������� )9IYiy��������0 12)394I5Y6i7y8�9�:�;�<�=�>�?�P QR)S9TIUYViWyX�Y�Z�[�\�]�^�_�p qr)s9tIuYviwyx�y�z�{�|�}�~��� ��)�9�I�Y�i�y����������������� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �d��\Ǝ������4Ma A,$� � �d��\Ǝ������4Ma A,T� � ��6C�A8 ��\��`�������4M֎������4Ma A,�� � ��6C�A8 ��\��`�������4M֎������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,D� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`�������4M֎������4Ma A,� � ��6C�A8 ��\��`�������4M֎������4Ma A,D� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,t� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � �d��\Ǝ������4Ma A,4� � �d��\Ǝ������4Ma A,d� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,D� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,t� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,� � ��6C�A8 ��\��`֎������4M�������4Ma A,4� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,d� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � �d��\Ǝ������4Ma A,4� � ��6C�A8 ��\��`֎������4M�������4Ma A,d� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,$� � ��6C�A8 ��\��`֎������4M�������4Ma A,T� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,T� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma Ĉ�� ��� �pC`f0��,�0K0 TD�B�@֎0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1֏`NSٽ &$@#�����& ұ<� �&$@#������#��Twm� ��4Ս�?� 0��#�,6o�� V�`NS�&��T8m� ��<4n���4�m���4Un���4o���4��#��T5n���4U��:B�:B=!�n� ��<wn���4�M�>�!8Meۆ�@���>�!8Me�a Ĉ�� �� �pC`f0��,�0K0 TD�B�@֎0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1֏`NSٽ &$@#�����& ұ<� �&$@#������#��Twm� ��4Ս�?� 0��#�,6o�� V�`NS�&��T8m� ��<4n���4�m���4Un���4o���4��#��T5n���4U��:B�:B=!�n� ��<wn���4�M�>�!8Meۆ�@���>�!8Me�a ���� �� ˆ�� �G�B�@����Ǝ�P���֎@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|ğ\p�����A|ԟ����A|ܟ\p�@�@T� WC��5֏`NSٽ!& ұ<� ��#��T7n� ��4խ[`�!8Mu��0�`� ��4�[b��D&�@̀[<B!8Me�<B!8M�>B!Q}[=B!8M��;!8Me���4U][>�!8MU��`��ܷ&��Txo� ��4U��:B�:B;B =!�n� �, na�!˂�f�`NS��#@3Դ�#��T�m���4��?!�a ���� �{ ˆ�� �G{B�@����Ǝ֎`�����#�,>Ra ���� ��z A�@����Ǝ@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|ğ\p�@@��A|ԟ�@��A|ܟ\p�@�@T� WC��5��`NSټ!& ұ<� �&��T7m� ��4�m�`�!8Mu��`��ػ�# @3Xa�!8M��f�`NS�%&Nd� ��4��`�!�r�&�@̀[<B!8Me[=B!8M��<B!8M��;!8Me���4U][>�!8MU㦏`NSպ�#��T5o��tD�m�`�A`��`��tD�&�,�m�� 5m���4�}?!�a ���� �G� ˆ�� ć�B�@����Ǝ�P���֎@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|ȟ����A|П\p�@�@T� WC��5֏`NSٽ�#�,��`NSٶ!& ұ<� ��#��T7n� ��4խ[`�!8Mu��0�`� ��4�[b��D�PNS�V�`NS��#��T��#@3���PHGT���@NSY=B!8M��=�!8MUז�`NSո&��T�m� ��4U��:B�:B;B =!�n��,�}�`�!˂�F�`����#@3Դ�#��T6a ���� ć ˆ�� ��B�@����Ǝ֎`�����#�,>Ra ���� �G A�@����Ǝ@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|ȟ�@��A|П\p�@�@T� WC��5��`NSټ!& ұ<� �&��T7m� ��4�m�`�!8Mu��`��ػ�# @3Xa�!8M��f�`NS�&��T�n� �,˭�<4n���4�m���4Un���4o� �>B!Q}�;!8Me���4U][>�!8MU㦏`NSպ�#��T5o�`�A`��`��tD�&�,�m�� 5m���4�}?!�a Ĉ�� �� ˆ�� �G��pC�f0��,�0K0 TD B�@ �@N3�;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|ȟ\p�����A|؟����A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��AƘ��������0H�b��tD�����������0�`���4�m���4Un���4o��,�}<!8Me���4U]�>�!8MU㦎��6�`��න#�&�,8o�� 5m���4�m[?!�b���4���?�!8Me��`NSݸ&��T�n� ��<&�`NSݼ-&��&��T8n� ��a�!8M��6�@̀[>B!Q}�a�!8M�צ�`NS��#��֘`NS�9&��T� a Ĉ�� �G� ˆ�� ć��pC�f0��,�0K0 TD B�@ �@N3�;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|̟����A|ԟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��AƘ��������0H�b��tD�����������0�`���4�m���4Un���4o��,�}<!8Me���4U]�>�!8MU㦎��6�`��න#�&�,8o�� 5m���4�m[?!�b���4���?�!8Me��`NSݸ&��T�n� ��<&�`NSݼ-&��&��T8n� ��a�!8M��6�@̀[>B!Q}�a�!8M�צ�`NS��#��֘`NS�9&��T� a � ��A|�_ d����Ǝ֎0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� ��� �w�E�9� \p\�����A|�\p\@�@T WC��<��`NSټ1& ұ<� �&��T�m� ��4Ս�`�!8Mu�V�`NSݼ&��Two�� v�`NS�%&��T�n� ��<4n���4�m���4Un���4o��tD�m���4��#��Tum���4U��b�!8M�ۦ�`NS崩#��#��#��#�톘`����# �0aB ý�=B4CM�>�!8Me۶�`NSٸ�#��Tvn���4��`!�a A ��A|�W d����Ǝ֎0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� ��� �w�E�9� \p\@�@��A|�\p\@�@T WC��<&�`NSټ1& ұ<� � &��T7m� ��4�m�a�!8Mu�v�`NSݹ�# @3Xb�!8M�Ӧ�`NS�-&��T8n� ��<4n���4�m� �,���<B!8M�[=B!8M�>B!Q}�;!8Me���4U][>�!8MU㦏`NSպ�#��T5o���4Uݛ:B�:B;B =!�n�0 F�P�p�f�P�P��`NSٴ�#��T�m� �,�&��T�a � ��A|�^ d����Ǝ֎0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|��\p\@�@T WC��<��`NSټ1& ұ<� �&��T�m� ��4Ս�`�!8Mu�V�`NSݼ&��Two�� v�`NS�%&��T�n� ��<4n���4�m���4Un���4o��tD�m���4��#��Tum���4U��b�!8M�ۦ�`NS崩#��#��#��#�톘`����# �0aB ý�=B4CM�>�!8Me۶�`NSٸ�#��Tvn���4��`!�a A ��A|�W d����Ǝ֎0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �� �w�E�9� \p\@�@��A|��\p\@�@T WC��<&�`NSټ1& ұ<� � &��T7m� ��4�m�a�!8Mu�v�`NSݹ�# @3Xb�!8M�Ӧ�`NS�-&��T8n� ��<4n���4�m���4Un���4o��tD�m� �,���;!8Me���4U][>�!8MU㦏`NSպ�#��T5o���4Uݛ:B�:B;B =!�n�0 F�P�p�f�P�P��`NSٴ�#��T�m� �,�&��T�a � ��A|�_ 7x`� �� ��@@� d ��0�c�`�A`��`�0 �@N3�;!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H�`NSټA&$@#�����M& ұX<� �5&$@#����� &��T�m� ��4Սa�!8Mu�Ƙ0�c� ��4���a�!8Mu���P̓���0�`� ��4^�b�!8M��6�@̀�<B!8Me[>B!Q}=B!8M�<!8Me���4U]�>�!8MU�f�PNS�`NSἩ#��#��#��#�햘`���9&��Tym� ��4U�[?� �I&��Tyo� 0 �n�� 5m� ��>�!8Me�Ə`NSٸ�#��Tvn���4��[`!�a � ��A|�^ 7x`� �� ��@@� d ��0�c�`�A`��`�0 �@N3�;!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H�`NSټA&$@#�����M& ұX<� �5&$@#����� &��T�m� ��4Սa�!8Mu�Ƙ0�c� ��4���a�!8Mu���P̓���0�`� ��4^�b�!8M��6�@̀�<B!8Me=B!8M��=B!8M�[>B!Q}<!8Me���4U]�>�!8MU��`NS�-&��T8o�`�A`��`� ��4U�[=!�n� �, �[d�!8M��֏0�`� 0 �n�� 5m� ��>�!8Me�Ə`NSٸ�#��Tvn���4��[`!�a ���� �� �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎@��a ���� �{ �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎`���a ���� �G� �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎@��a ���� ć �p1�����Q�D8 �0�c�`�A`���4�n����#��T֎`���a bA,@��Uz�P��w@!�^p��x�pr2b` ��~Bp�p r2b` �Bp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<�`NSٽ&��-& ұX<� ��#��Twm� ��4�}�`�!8Mu��0�c� ��4�͛`�!8Mu�֏`��ؼ�# @3Xa�!8M��v�`NS�!&��T�m� ��<4n���4�m���4Un���4o���4��#OD ���=�!8MU㆏`NSպ%&��T8o�`�A`��ÿ8V�@HG��b�!8M�Ӧ�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` ��~Bp�p q1b` �Bp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<�`NSٽ-& ұX<� � &��T7m� ��4�]a�!8Mu�V�`NSݺ& ��a�!8Mu�֏`��ظ!&��Two�� ��`NS�)&��T8n� ��<4n���4�m���4Un���4o���4��#��T5m���4Um;��D����#��T�n���4U͛:B�:BX;��D��/��#��f�P�s�Ə`NSٴ�#�,�`NSٹ�#��T�a bA,@��Uz�P��w@!�^p��x�pr2b` �~Bp�p r2b` ��~Bp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<�`NSٽ&��-& ұX<� ��#��Twm� ��4�}�`�!8Mu��0�c� ��4�͛`�!8Mu�֏`��ؼ�# @3Xa�!8M��v�`NS�!&��T�m� ��<4n���4�m���4Un���4o���4��#OD ���=�!8MU㆏`NSպ%&��T8o�`�A`��ÿ8V�@HG��b�!8M�Ӧ�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �~Bp�p q1b` ��~Bp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<�`NSٽ-& ұX<� � &��T7m� ��4�]a�!8Mu�V�`NSݺ& ��a�!8Mu�֏`��ظ!&��Two�� ��`NS�)&��T8n� ��<4n���4�m���4Un���4o���4��#��T5m���4Um;��D����#��T�n���4U͛:B�:BX;��D��/��#��f�P�s�Ə`NSٴ�#�,�`NSٹ�#��T�a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �������@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ���� �H� A�@����Ǝ@��a ���� ��� A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ������ ��#�,a ��A� ����� ��#�,a ���� ��� A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ������ ��#�,a ���� �H� A�@����Ǝ@��a ���� �ȿ A�@����Ǝ@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ���� �Ȼ A�@����Ǝ@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �������@��a ��A� 䇹�����@��a ���� �H� A�@����Ǝ@��a ���� �ȸ A�@����Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ���� �Ȭ A�@����Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ���� �ȩ A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ���� �Ȩ A�@����Ǝ@��a ���� ��� B�A8����Ǝ0@�c��, a ��A� ��������@��a ��A� �������@��a ��A� Ȉ������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� Ȉ������@��a ��A� �������@��a ���� �ț A�@����Ǝ@��a ���� Ј� B�A8����Ǝ֎@��a ���� �Ț A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ���� ؈� B��@����@H�;!<Sa ���� �� B��@����@H�;!<Sa ��A� �������@��a ��A� ��������@��a ���� �H� A�@����4Ǝ@��a ��A� ��������@��a ��A� �������@��a ���� �ȋ A�@����4Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ������ �� A�@����Ǝ@NSY;!�a � ����� ��B�@����Ǝ@NSY;!�a ���� �G A�@����Ǝ@��a ���� �G A�@����Ǝ@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa ���� �I~ A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ���� ��{ A�@����Ǝ@��a � ����� ��{B�@����Ǝ@NSY;!�a ������ ��{ A�@����Ǝ@NSY;!�a ���� ��z A�@����Ǝ@��a ���� ��z A�@����Ǝ@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa ���� ��y A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Ț A�@����Ǝ@��a ���� �o A�@����Ǝ@��a � ����� �HoB�@����Ǝ@NSY;!�a ������ �Ho A�@����Ǝ@NSY;!�a ���� � n A�@��0T�b�0 !IƎ@��a ���� ��m A�@��0T�b�0 !IƎ@��a ��A#�` &�5���0T�b�0 !IƎ04�a��, a ��A#�` &�5���0T�b�0 !IƎ04�a��, a ���� ��l A�@��0T�b�0 !IƎ@��a ���� � l A�@��0T�b�0 !IƎ@��a ���� ��k A�@��0T�b�0 !IƎ@��a ���� � k A�@��0T�b�0 !IƎ@��a ���� ��j A�@��0T�b�0 !IƎ@��a ���� � j A�@��0T�b�0 !IƎ@��a ���� ��i A�@��0T�b�0 !IƎ@��a ���� � i A�@��0T�b�0 !IƎ@��a ���� ��h A�@��0T�b�0 !IƎ@��a ���� � h A�@��0T�b�0 !IƎ@��a ���� ��_ A�@��0T�b�0 !IƎ@��a ���� � _ A�@��0T�b�0 !IƎ@��a ���� ��^ A�@��0T�b�0 !IƎ@��a ���� � ^ A�@��0T�b�0 !IƎ@��a ���� ��] A�@��0T�b�0 !IƎ@��a ���� ,u5A�@Ǝ0T�b�0 !I��p�a��, a ���� ,s5A�@Ǝ0T�b�0 !I��p�a��, a ���� � \ A�@��0T�b�0 !IƎ@��a ���� ��[ A�@��0T�b�0 !IƎ@��a ���� �I[ B�A8Ǝ0T�b�0 !I��p�a��, a �ȈA� ��Z� ����@�@ ֎0�c���4��#��T�PNS���PNS�Ǝ@��a �ȈA� � Z� ����@�@ ֎0�c���4��#��T�PNS���PNS�Ǝ@��a ;J,@ �� �� ������a��pC�`0�0���� � [%�1K� 7�2F0bp p�V���#�`'m�,�,�1PAD!��@y(�p�$��A86�`��Խ�# �<B!0OM>�!8̀Ӗ�`N3��#�,7m�� ��#�,wo���<vm���4��#��#��#��#�,a 9J,@ �� �� ������Q�$� E��,�@#�`�#f���p�Q��,Ca#�`�#g�$�Lj�� ��Y-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3v�`N3ؼ�#�� �@̳>�!8�`�F�`��ص�# �:B�:BX=�!�b�6�P�S��@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#a���p�Q��,Ca#�`�#b�$�Lj�� ��X-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3f�@N3X<!0�n��,�]�;� 0��#��#��#�,�n���<un���4��>�!8�`��@��a 9J,@ �� �� �����Q�$� E��,�@#�`�#<���p�Q��,Ca#�`�#=�$�Lj�� �HO-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3f�@N3X<!0�n��,�]�;� 0��#��#��#�,�n���<un���4��<!�b���4��a 5J,@� ���,C #�`�4E�$� ���,�@#�`�5e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�/E�$� ���,�@#�`�0e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�'*E�$� ���,�@#�`�'+e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�'%E�$� ���,�@#�`�'&e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 7J,@ �� �� �����T1K� 7x� �����1K� 7�2F0bP |2R�,�1bP |2R�,�1PAD!��@y(�p�$��A8�0�c�`���4��#�3f�`N3Զ�#�� �m��,Kn���<��#�,��#����@��=�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |�O�,�1bP |�O�,�1PAD!��@y(�p�$��A8�0�c�`���4��#�3f�`N3Զ�#�� �m��,Kn���<��#�,��#����@��=�!�R�a � �X�@����@0�@;!8Ma � �T�@����@0�@;!8Ma � �`�@����@0�@;!8Ma ���� �I< A�@��0T�b�0 !IƎ@��a ���� ��; A�@��0T�b�0 !IƎ@��a ���� �I; A�@��0T�b�0 !IƎ@��a ���� ��: A�@��0T�b�0 !IƎ@��a ���� �I: A�@��0T�b�0 !IƎ@��a ���� ��9 A�@��0T�b�0 !IƎ@��a ���� �I9 A�@��0T�b�0 !IƎ@��a ���� ��8 A�@��0T�b�0 !IƎ@��a ���� �I8 A�@��0T�b�0 !IƎ@��a ���� ��/ A�@��0T�b�0 !IƎ@��a ���� �I/ A�@��0T�b�0 !IƎ@��a ���� ��. A�@��0T�b�0 !IƎ@��a ���� �I. A�@��0T�b�0 !IƎ@��a ���� ��- A�@��0T�b�0 !IƎ@��a ���� �I- A�@��0T�b�0 !IƎ@��a ���� ��, A�@��0T�b�0 !IƎ@��a ���� �I, A�@��0T�b�0 !IƎ@��a ���� ��+ A�@��0T�b�0 !IƎ@��a ���� �I+ A�@��0T�b�0 !IƎ@��a ���� ��* A�@��0T�b�0 !IƎ@��a ���� �J* A�@��0T�b�0 !IƎ@��a ���� ��) A�@��0T�b�0 !IƎ@��a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ���� �I( A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� ,*4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,(4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,&4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,$4A�@Ǝ0T�b�0 !I��p�a��, a ���� �� B�A8Ǝ0T�b�0 !I��p�a��, a ���� �  B�A8Ǝ0T�b�0 !I��p�a��, a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a �ȈA� �I����@NS�:�D�`��, a �ȈA� ������@NS�:�D�`��, a �ȈA� �I�� ����@�@ ֎0�c���4��#��T��#��T��#OD Ǝ@��a �ȈA� ���� ����@�@ ֎0�c���4��#��T��#��T��#OD Ǝ@��a ��A� � ����0<Sa ��A� ������0<Sa ��A� � ����0<Sa ��A� ������0<Sa ���d�@��<a ���d�@��<a ���d�@��<a ���d�@��<a ���p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a ���� ̇� B�A8Ǝ`8E!��# )��@�Da ��A� ����� a ���� �J����0�d�2a ��A� �����@0��a �pCPa0bp ��6�� Ap�A8��@<1�:��a A,@ � ������ ���B0����@<1�:��a �pCPa0bp ��6C� Ap�A8��@<1�:��a A,@� ������ ���B0����@<1�:��a A, 4�\W ��8�C:�C9�C8��:��8́���} #D�` a &A,@��3��<��9���9��������A���������������6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�!EB 4��# <� Qa 'A,@��3��<��9���9��������A���������������6!P�\Ď��| d ƎPX�0�PHT�#��pH�P a�CD&�@8��X<B!��a #A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ƎPX�0�0H�b�CD��P �2��0HTa $A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ ƎPX�0��PHT�#��0T@d��@,`��t,>a %A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�P��#�L��# a 'A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d ƎPX�0�PHT�#��0T@d��@,`�����#ұ�a &A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�P��# �& )�0HTa 'A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d ƎPX�0�PHT�#��0T@d��4� H��#N�#�PH��#a &A,@�M5��<��9���9��������A���������������6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�!EB 4��# <� Qa #A,@�Ts�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ƎPX�0�0H�b�CD��P �2��0HTa %A,@�M5�<��9����;܃;��8́��������� }`l`l l 6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�P��#�L��# a &A,@�M5�<��9����9�C>��8́��������� }`l`l l 6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�P��# �& )�0HTa UA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a����m� 1!Q�T[>�!Q���V�PHT�#v�@8���>�!���f�PH��#6���L��0T@a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d��D>R���#N�#>b��t,>�#6���L>a OA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�PHT�#v�`HT�#��#(��D�D-Sm��t,>b[=B!���<BHLDH�2�:�P��#�La QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`��D>R���#ұ����<�HLDH�2�a TA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�PHT�#��P8��ܦ�`H��#��#(��D�D-Sm�����#�Hm��t,>b� 1!Q�d�CD��P �2a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD��P �2v�`8�����#ұ����<�HLDH�2���# �H�#a UA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�PHT�#F���L��#ұ��m�����#N�#��#�Hm��t,>b� 1!Q�d�CD���,@C���a XA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD���,@C����=��D>�#���HT�#���=�!�����#,��D�D-��a WA,(@��3��<��9���9��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m�� %����HT�#>R=�HLDH�2զ��H��#>b[=�!Q�����#ұ����=��D>�#6���L��0T@a QA,'@=s�A��:�;�A=��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;�1�� B`�����| ����@~p#G�`0��#F�`�'K@dƎPX�0v��HT�#>R>"����m� 1!Q�T=�!Q�����#ұ����<BHLDH�2�:�P��#�La WA,(@��3�<��9����;܃;��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m��D>�#��# ұ����F���L��#����<BHLDH�2�:�P��#�L��#N�#>b��t,>�#a WA,(@��3�<��9����9�C>��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m��D>�#��# ұ����F���L��#����<BHLDH�2�=�!�����# �:� a�b�����a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d��D>R���#N�#>b��t,>�#6���L>a [A,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����#R$�@C�=B"������<BHLDH�2����=�D>�#>b�CDV��HT�#>�#���8���>�#���H��#�����#8��D�D-S�#>a QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`��D>R���#ұ����<�HLDH�2�a TA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0v��HT�#�����#$ұ������#4��D�D-�����# �:B1�=B"Q�����>�"���>�#6���L���a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD��P �2v�`8�����# �H�#f�pH��#>b� 1!Q��#a ZA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����# N�#>�#f��H��#>�#6���L>�#��0T@d��@,`��D>�#>b�����#>b��t,>b���=�HLDH�2�>�#a XA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD���,@C����=��D>�#f�pH��#>b� 1!Q��#���HT�#��a [A,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����# N�#>�#f��H��#>�#6���L>�#��0T@d��4� H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a A,@�& !P�\Î$����L���&@�@ ֎PX�0&� 8��# ұ;�!EB 4��# <� Q��# )a A,@�& !P�\Î$����L���&@�@ ֎PX�0�PHT�#ƎpH�P a�����#ұ���# �:��a A,@�& !P�܈A� �J� �a� �A8 ֎PX�0�0H�b�CDƎP �2��@0��<� Qa A,@�& !P�܈A� �J� �a� �A8 ֎PX�0�PHT�#�PH��#��0T@d��@,`�H a A,@�& !P�\Î$����L���&@�@ ֎PX�0&� 8��# ұ�:�P��#�L��# )�0HTa A,@�& !P�\Î$����L���&@�@ ֎PX�0�PHT�#&�@8��X<B!���:�P��#�L��# )a A,@�O6!P\Ď$�����B$H0�� ֎PX�06� 8��# ұ�:�P��# �& )��@0��X<� Qa A,@�O6!P\Ď$�����B$H0�� ֎PX�0�PHT�#6�@8���<B!���:�P��# )Ǝ�,@C���a #A,@�& !P�\Î�A~� 2b� ��2J�0�#�`�+'d֎PX�0&� 8��# ұ;�!EB 4��#�,�m�CD��@0��<� Q��#�,a A,@�& !P�܈A� ��# �`�+.��!�&��A� ���� ֎PX�0V�`��Է�# ұ�:�P��#�L��# )�0HT`��, a "A,@�& !P�\Î�A~� 2b� ��2 �0�#�`�+'d֎PX�0&� 8��# ұ�=�!�R߶�0T@d��@,`�H��# �<!�a #A,@�O6!P\Ď�A~�L2b� �3K$�hB�����L�A8֎PX�06� 8��# ұ�=�!�R߶�0T@d�H��# �& )�0HT`��, a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0V�PHT�#ƏP8��ܶ�`H��#��#(��D�D-Sm��t,>b�H��#R$�@C�>�!Q���v�@8���<BHLDH�2�:�Pa MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0ƎpH�P a��D>�#Əp8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#6���L>b��D>R�a FA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�PHT�#��`H��#��#(��D�D-Sm��t,>b�H��#$��D�D-��#�Hm�CDƎP �2a HA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ����<�HLDH�2���# �H�#a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�PHT�#ƏP8��ܶ�`H��#��#(��D�D-Sm��t,>b�H��#�Hm� 1!Q�d�����# ;B1�a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CDƎP �2��@0���=��D>�#f�pH��#>b� 1!Q��#���HT�#��a JA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�PHT�#֏P8���Ə`H��#��#(��D�D-Sm��t,>b�H��# �& )��`HT�#��#N�#F���L��0T@a MA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�pHT�#>b�����#Ə�H��#��X=HLDH�2�>b�CD��@0��;� a�b������=�!�����#,��D�D-���>"Q���>a MA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�'O`d֎PX�0F���L��#����:��b�����;�!EB 4��# ���Զ��H��#>b?��D>�#��#$��D�D-��# �=�!���a GA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ~�E�@֎PX�0F���L��#����:��b��D>�#��# ұ����6���L��0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�'O`d֎PX�0F���L��#����:��b�����?��D>�#��# ���Զ��H��#>b�<BHLDH�2�:�P��#�L��#ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<wsy��`n v@`�dl@q�ld {p�<�A��#E�`�;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ~�F�@֎PX�0V���L��#����:��b��4� H��#N�#>b�����ܶ��HT�#>R?"����m� 1!Q�d�CDv�pH��#>a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0ƎpH�P a��D>�#Əp8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#6���L>b��D>R�a PA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0���HT�#�����#R$�@C�=B"������<BHLDH�2����=�D>�#>b�CD��@0��X=B"Q�����?B�D>r����>�"���>�#F���L���a HA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ����<�HLDH�2���# �H�#a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0���HT�#�����#$ұ������#4��D�D-�����#8��D�D-S�#>b�CDƎP �2��@0��X=B"Q������>�"���>�#a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CDƎP �2��@0���=��D>�#f�pH��#>b� 1!Q��#���HT�#��a PA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d��@,`�H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a MA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�pHT�#>b�����#Ə�H��#��X=HLDH�2�>b�CD��@0��;� a�b������=�!�����#,��D�D-���>"Q���>a PA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#֏�8���>�#��0T@d�H��# �& )f��HT�#>�#Ə�H��#�����#8��D�D-S�#>a A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������pn0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������pn0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������pn0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������pnPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q�ě:��L��#��T5n���4U͛;BHLDH�2�<!8Me��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������pn`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������pn`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��# �Y<�HLDH�2�&�@NS<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��# �Y<�HLDH�2�&�@NS<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,T� y7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a OA,� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �Y<�!8MU��@NS�<B���>�HD4�<B���>�HD4a OA,D� �7W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#��T���L��# �<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� �7�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,D� �7�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� �7�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#E�`P3��A8��0<Sa A,��\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#E�`p3��A8��0<Sa 2A,4� �7�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� 8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2�&�������4MF�������4M���L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,T� y7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me��_�O�H#�d���4UM�<B���>�HD4a OA,� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a OA,D� �7W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!v�������4M����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� �7�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,D� �7�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� �7�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#E�`P3��A8��0<Sa A,��\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#E�`p3��A8��0<Sa 2A,4� �7�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� 8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��� ��#�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��� ��#�c��t �q }2"�\�3�U<�^�3��>�`�3�I�b�48FM�d�4XVX�f�5x�Z�h�5��]�j�5�Fi�l�6�Vl�n�6��n�p�6�y�r�78G}�t�7XW��v�8x���x�8����z�8�G��|�9�W��~�9�G����:P����:8�����:X�����;x@����;�P����;�@Ƀ��<��̃��=�ۃ��>8pꃔ�?X`����?x�����@�����A�����A�@(���B�@9���D�I���D8�X���EX�_���Fxo���G��~���H������I�����J�𫄰�J�����L80؄��Mh0߄��M��脼�N�0���N(����Nh0���N�����N�0����O�����OH0����O������O�@����O�����PH` ���P� ���P�� ���P ���PH����Q� ���Q�����Q(0���QH(����Q�(@���R�(�(���R)P*���RH)�+���R�)P-���R�)�.���R*`8���SH*�9���S�*�;���S�*@=���S+�>���SH+@H���T�+�I���T�+@K���T,�L���TH,�N���T�,X���U�,�Y���U-0[���UH-�\���U�-`^���U�-�_���V.pi���VH.�j���V�.pl���V�.�m���V/�o���W(/py���Wh/�}���X�/p����X�/����X�/�����X�/P����Y(80����YH8К���Y�8P����Z�8Ы���Z�8p����Z�8����Z9�����[89�����[x9p����[�9�����[�9pȅ��\:Pʅ��\X:0̅��\�:΅��\�:�υ��];�م��]X;�ۅ��]�;�݅��]�;�߅��^<����^X<p���_�<�����_�=P ���`8>0���a�>)���bx?08���c�?�9���c�?`;���cH@=���cHH ?���d�HI���d�H�J���dI�L���dHI�N���d�I�X���e�I`Z���eJ@\���eHJ ^���exJ h���f�J@j���f�J@l���fK n���fHKx���g�K�y���g�K�{���gL�}���gHL����h�L`����h�L@����hM ����hHM����h�M�����i�M�����iN�����iHN�����i�N�����j�Nઆ��jOଆ��jHO�����j�O�����k�O�����kX`����kHX@����k�X Ȇ��l�Xʆ��lY�ˆ��lHY�͆��l�Y�φ��m�Y�ن��mZPۆ��mHZ�݆��m�Z�߆��n�Z醮�n�Z@ꆰ�n[`놲�n8[�솴�nX[�톶�n�[`�o�[�����o\`����o(\�����oH\�����ph\� ���p�\����q�\����r�\�*���r�\�/���s]p<���t(]�O���uH]�i���vh]�|���x�]�����y�]�����{�]�����|�]ه��}^����(^����ɀH^`��x^������^@)�����^�,����^�8����_�<���8_�I���X_0[����x_Pl�����_~�����_����ʉ�_0�����_�����h�����8hp�����Xh����׏xh� ��Đ�h� �����hp�����h�����h�)���ip9��ړ8i�H��͔Xi�O����xi@[��Ε�i�^�����i�n�����i�}�����i������j������8jP�����Xj�����xj������j`�����j�������j�������j`�����k������8k����ȟXk0�����xk� ��ˠ�k���ȡ�k�(�����k�/�����k�<���l@I��פ8lpX����Xl�[��٥xlP_�����l�j��Ŧ�l�o��ŧ�lP�����l������m������8m �����Xmp�����xmp������m������m����ݭ�m�������m0�����n`���ѯ8n������Xn@ ����xn� �����np�����n@*����np9��ڳ�n�H����oL��۴8o`O����Xo`_����xo�n�����o�}�����op���¸�o ������oP�����x�����8x�����Xx������xx���¼�x`������x������x�������x����ǿyP�����8y�����Xy�����xy0.�����yP;�����ypH�����y X�����y�[����z�_����8z�k����Xz�x����xz0������z�������z�������zp������z �����{������8{P�����X{�����x{ ������{@������{� �����{� �����{����|����8|0+����X|p:����x| I�����|�O�����|�[�����|�_�����|`o����}~����8}������X}������x}�������}0������}0������}P������}P�����~p�����8~������X~`�����x~������~ ������~ �����~������~P)����8����8�<����X�I����xpX�����p\������h������l������y�����������8�������X�P�����x�`�������`������������؈��������@������ �����8������X�������x���������� �����������؉�������0,������:����8��I����X��M����x��Y������ i�������o����؊�~������`������@�����8������X������] ���.threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_60_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z6__shfliii_Z6__shfljii_Z9__shfl_upiji_Z9__shfl_upjji_Z11__shfl_downiji_Z11__shfl_downjji_Z10__shfl_xoriii_Z10__shfl_xorjii_Z6__shflfii_Z9__shfl_upfji_Z11__shfl_downfji_Z10__shfl_xorfii_Z6__shflxii_Z6__shflyii_Z9__shfl_upxji_Z9__shfl_upyji_Z11__shfl_downxji_Z11__shfl_downyji_Z10__shfl_xorxii_Z10__shfl_xoryii_Z6__shfldii_Z9__shfl_updji_Z11__shfl_downdji_Z10__shfl_xordii_Z6__shfllii_Z6__shflmii_Z9__shfl_uplji_Z9__shfl_upmji_Z11__shfl_downlji_Z11__shfl_downmji_Z10__shfl_xorlii_Z10__shfl_xormii_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! � !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L&� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��E䔁�ȡ��TT����*�PRE�Z� W5e�(�S�AU�_~��DU!�!ȪR@X�)H�R��/@\�ȫR�@`����4@d�� �,��w�EiQE(c-b��(Bn�[�G����"E��]TYRK�"�(�"���E�A���/B�hF�E�c0"�)B ��a�HI��L�� c��RR#Ȩ�"T#MV�_�ʊ@�Pt S�a2#�(�"$�uF����2\р$Z���"� W�u�V�+�P+�k�A��� �� ��pE\~�ke��.E�2\q�%$[��+�� W�% �V�+C�p+���A��� �!��pEb��oe���L�2\�)$\���"� W$� W�+�"��+�� Cʕ� Β!��p�g�sS�T0�@ �1�@F�"Xg]W��+�u��vE�n-��E��-�w�Q��� q�w�Q���"�`�]�^�Ӌ�3������"X�W����� �a4_�K��+�u��}E��1ʯ�IF��_��_f�!~��_� g��!�~F��  q�Z@� �H�B\�w�Ÿ��;��r�W�a1�� �$,�}`QX�+��W @� �4,���q�w����1 �q�cb!���H�B\��/��Ÿ��_~��2�W|F9�",w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �Q��0;�s � �e�p�c0 � ���`��q�b0�($r�8H1�`��`� @���\0S  ��L.�)��'���v@~� Ƒ��@;����P�` �|�q�b0�(�r�8X1�`$v�`� @�ڿ\0W  ��b� ���@;�� r�8`1�`d�A.G,�~5���` ���`� @����c��v@��r�c0���Y@t  ��x@ ȑ��@;�qd9�1�`T��+G-�FPp��` �P, �`� @��I����v@�)��q�b0�hOW0]  ���� Ʊ��@;��\�8x1�`TƂ+G/��Yp���` �Ph �`� @�zq����v@�.��q�c0�h�W0q  ��� �1��@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��_+0D*Y��H4K@�@��l �0"�-�C��%"v`�d���$ �З���!��S=�0Dja��H=LD�@�ɍ��0"�1!�C�X&��`�4�Ą$ �왘V�!RJ�K�0D�i�� �HjM<4@�)� �&"�6�C��&�� `�d�D� ����!҉RY0D�q�A �HhN@k@� � �-"�:�C�\'"� `���t �������!��S_0D { �HqOD�@�I� �4"�>1�C��'�� `��� �\��f��!��m0D�â� �H�XX�@�I �7"�cq�C��,"� `���� �䲘���!Ri�{0D����H�Y �@��= )>"�g�C$-�� `��� �ƴ`���!қ�|0D�ӂ��H�Z �@�)V g>"�j��C�u-�� `���3 �J�@���!R��|0D��"��Hl[L�@��o�h>"�n1�C��-�� `��4 �B�p���!� �|0D��™�Hm\@�@��� g>"�r�C�].�� `���E5 �F�����!�M�|0DZ납�Hw]0�@�i� �>"�v��C��.�� `��ޅs ��p���!R��}0D��b��H>^(�@� ͋e?"�y��C$>/�� `�tꅲ@ �b�`���!R�I~0D2����H�^ �@�I� f?"�|��C��/�� `����@ ���H���!R��~0D��"��Hy_ �@�)�$?"�~��C$�/�� `���ű@ �ĿH���!���~0D�����H�_�@�����?"��q�C�4�� `�$��" �r� B��!R�0D*C��Hmh�@�I��?"��a�C�P4�� `���F�@ �\�@F��!�-Ĉ0D�E)�H�h(%@�� �D"ѣ��C�~4�� `�D��@ �P�H���!RL�0D�I#�H`i#@��, EE"��Q�C$�4�� `����@ ���XX��!�j�0D�MC)�H�i%@� < �?"��Q�C��4�� `�D��@ ���@���!��0D*Q��H-j�@�IF��?"�A�C�5�� `�T�F�@ ���@���!���0D�SC�H�j#@��T��?"��A�C$Y5�� `���F�@ �~�@���!ҹ�0DbW#��H�j�@�i_��D"��q�C��5 `����"@ ���@���!R��0Dr[#��Hwk�@��o �?"��Q�C$�5�� `�4���@ �r�H���!���0DB_#��H�k�@��~��?"��a�C$6� `�Æ1"@ �l�@���!��0Dc���Hjl�@�ɍ �?"ٱQ�C�=6�� `�T���@ �X�P���!�-�0D�e��H�l$#@�i� gD"����C��6� `��ӆ2"@ ���h`��!\�0D�k#��H�m�@�ɴ EF"��q�C��6 `�$�"#@ ���H���!�|�0D�o��H!n�@��čDF"��a�C�7 `����!#@ ���h���!Ҝ�0D�s#�H�n#@�iՍ�F"ѺA�C$\7� `��F1"@ ���HF��!һň0D�w#��H�n�@�i��?"��a�C$�7�� `����@ ���H���!���0D�{#��Hyo�@��� �F"����C$�7 `�d��a#@ ���0���!���0D����H�o �@����G"��1�C�<�� `����@ �d�0���!�0D�����Hbx 8@�� �?"����C�R<�� `�t���@ ���P���!�;�0D��c��H!y �@�)%��?"���C��<�� `���@ ���H���!�_�0D*ͣ��H�y <@�I7��G"��A�C��<�� `�4� ���@���!҈�0DB��H0z`@��FL"�聀 C$3=0 `��& ���@���!���0D2��H�z <@��V�G�"���C$q= `���@ ���@���!��H|0D���H&{`@�ieL"��a� C��=0 `��& ���@���!R��0D���H�{ `@�)udD"���C��= `�Ի�# ���@t��!R���0D�߃ �H(|<b@��FL�"��� C$9>1 `��G$& �d�h���!�/��0D�� �H�|Dd@�ɥ��L�"��� C$�>1 `�d��#& �J�`���!Rl��0D� �H�}<b@�i�FL�"��� C$?1 `�$��#& ���`���!R���0Db�� �H�~<b@���FL�"��� C��?1 `���#& �t�X���!R���0D��� �H�<b@���FL�"��- ���` �H�@ C�D���!� "��0DC�1 �Hp�Df@�)��L�"�"� C$pD4 `��ȡ&0 ��)���!�>"���0D I�` �H&�`n@��'N�"�%�� C$�D8 `�d�'@ ������!�m" �0D�M$� �H�$<@�)>��G�"�'�� C$E `���H�#@ ��Ix��!R�" �0D�S��H��$<@��V��G�"�+��C�tE `�$��G' �`y���!��"�~0Dr[�� �H}�<�@��u��N"�/�C��E�� `����@ �v����!�#��0D:e�� �H��8x@�i�O�"�3�� C�F<; `���ȃ'@ ��y���!�^#�0DRm�� �H��pz@����O�"�8�� C�G> `����'@ ������!Ҫ#�0D�u�� �H�<|@� ߑ�O�"�<�� C��G>? `�D�� C$�G2 `�4�C&@ ��y���!� &��0D���1�Hk�8f@�)��L"�bҘ C�ZL3 `�4� c&@ ��1y���!�?&��0DZ��1�H:�8f@� -��L"�e� C��L3 `�D��c&@ ��3q���!|&��0D���1�H,�8f@�IG�gT"�iŒ C�:M,1 `����$&@ �z5����!�&��0D:���H=�Hb@��m�KL"�n2� C��M,3 `��� e&@ �F8����!�'��0Dz��"�H��Hd@�間�L"�s2� C��N�Q `�tӉ4*@ ��:�F��!h'Ө0D����H�\b@� �KL"�xr� C�6O.1 `�D��$&@ �n=����!һ'��0D���H:�Lb@���LL"�~B� C��O.3 `��Ie&@ �JP����!R*��0D�C�"�H��Ld@���L"գB� C��T,1 `����$&@ ��R����!j*��0D�M�2�H�Pf@��D��L"�R� C�8U,1 `�t��$&@ �rU����!�*��0DY�2�H9�Pf@��m��L"��R� C��U,1 `����$&@ �BX����!+��0DZc�2�H��Pf@�����L"��R� C��V,1 `�tӊ$&@ ��Z����!h+��0D�m�2�H�Pf@�����L"ѸR� C�4W,1 `���$&@ �b]����!�+��0D�w��H1�Hb@�i�KL"�2� C��W���!�+�@���l `��˴0D ��Z"��"-@ �Tq��H�L C�z\.4 `�Ē �&@ ��r����!^.�0Dj���H�Hb@��>�KL"��2� C�],3 `�T��d&@ �Pu����!ү.��0D����H)�Hb@�ig�KL"��2� C��],3 `��� e&@ ��w����!� /��0D���Hp�Db@�)�KL"��"� C�t^*3 `��ϋd&@ �`z����!�Y/��0D���H��Db@��KL"��"� C�_*3 `����d&@ ��|����!R�/��0D����H�Hb@�)�KL"��2� C��_,3 `���d&@ �h����!��/��0D����H5�Hb@�� �KL"�!3� C�Xd,3 `�t� e&@ �������!�L2��0D:KF)�Hq� l@�)/�T "�&3� C$�d(5�`�d�L�&@ �N����!��2�0DRS&��H{�d�@��V�("�+��  C$e�8 `�� v*@4 �Җy���!�2ة�0D�]�K�H��|�@�Ʌ�0H�Ho�x�@�����"�3��C��f�Z `�d� W  �D�Y���!Rk3�|�0D�mfZ�H��X���i��U"�8�� C�;g�U `�d�̵*@< �z�����!R�3�0Dy��H0�@�@� �)>"�=I �H�a���!�3�|0D�}��H��<�@�I�i>"�`#�C$l�� `��M4 �@�ad��!+6��0D��F��H��D�@���V"�d�� C$�lZ `�T��C+ �貑h��!�i6�0D��&��H��D�@�I?�V"�h�� C�m$[ `�t�Md+ ��ah��!�6 �0D����H��<�@��]�V"�l#� C$�m"Z `�4�MD+ �趙p��!��6��0D��f��H��X�@�� W"�p�� C�:n0\ `���ͅ+ �ȹ�p��!�>7�0Dr��� �H<�8�@�I��W"�v�� C$�n.^ `����. �D�����!R�7�0DZ���H��`�@�)� \"�{s� C$�o.p `����$. �侱���!�7��0D���H��L�@�I� \"��c� C�9t,p `���. �������!R>:�0D�I��Hg�,�@�I.��\"���� C$�ts `�4�Β.D �|�Y �H��,�@��>�]"��� C$u"y `�T�NT/ ���y���!R�:Ͼ0D�U���H��,���i^�%]�"���@ �R�Y���!�:Q�0D*['"�Hv�H'@� uIe"�� C$�u � `����53 �`�Yj��!�;��0D2c'��Hw�D=@� � l"�Ð C$svr `�$�c.D ���a���!�J;L�0D�i��"��Ð C$�v"v `���N�. �`ۑ���!�x;R�0D�o��H$�@�@��Ɲ�_"��Ø C�:w�t@`��0Dju�!�H��H!@�i��d"��3� C$�w&� `�4�N�2 ��މ`��!R�;��0D�}���H��07@���Ig"��#� C$|&� `���C. ���a���!�(>��0DzŇ1"�H��0�@�� `�4�C. ������!L>ѻ0D �G��Hs�H�@��4_"��� C��|* `���c.H �L�a� �!��> @��G�\"��#� C$>}$� `���t2 ����T��!�>Q�0D*�'��H6�\3@��m�f"���� C��}$� `�t���3 �������!�> �0DB�!�H4�0�@� ��\�"��ä C$<~��!)? �0D��'b�H��D�@�I�I^"��#� C$�~ | `�d��/ �������!�j?�� 0D��I$�H��0C��~r `��ߏ2 �Z��H��!ҏ?��0D��gR�H��D-@��֟f"��s� C$�� `���s3 �l��t��!�?R�0D��g�H��0�@�)��\"��Ø C��s `����.D �Rb �H51�@�) ��]"�!� C�Q�$y `�T��T/ ������!�=Bо0D:I���H< 1��� -!&]�"�%�@ �@b���!kBR�0D�MH"�H� M'@�iD�Ie"�(� C�3�"� `����53 �^bj��!ҮB��0D:WH��H� I=@�ie� l"�,Đ C$��r `�d�c.D �Db���!��BL�0D�]��"�/Đ C$��"v `�4�P�. �h����!�CR�0D�c��H� A�@� ���_"�3Ę C�|��t@`�T�0D�i�!�H= I!@��!�d"�64� C$چ&� `�t�P�2 ���`��!R�C��0Ds���Hl17@� �!Ig"�:$� C$^�&� `���#6 ��b���!��C �00D�y�!&�H?1f��i�!m"�=Ĉ C�ч$� `�T���6 ������!��C�0Dj�(��H>Et@�� #�n"�bĐ C�X���`�ԋ�6 ��1b���!R=F�0DB�h��H;Q|@��-#�o"�f$�C�ڌ$� `�t�F: ��3bL��!ҊF �0D��hR�HjM�@��O#�u"�jĈ C�^�� `���C6L ��5b�� �!R�F��00DjوA�H91b@��l#Im"�m$� C�ԍ&� `�Ļ�7 ��7����!G�0D��Ȳ�Hg1d�i�#�l�"�qĠ C�U�� `�t�ф7 ��9����!R?G�0D����HeI�@��#It"�v��C���� `����: ��;�T��!�G�0D��r�Hs1b@���#Fl"�zĐ C�[��``�4�c6L ��=b���!ҾG��0D:�HR�H9Il@�i���m"�}4� C�؏"� `�$�QD7 ��?����!R J �@0D�A�1(�Ha(1h@�� %Fl"�4� C$V�&� `���7 ��Q����!�IJ�0D�II�Hk)a�@�i4%�t"��ĠC�ݔ&� `����: �BT�\��!R�J��0D S��Hm*1d��)O%�l�"��Ę C�X�� `�ԫ#6 ��U����!ҾJ�0DjYir�H`+Mp@�in�Hn"��� C�ڕ,� `���C6P ��Wb� �!�K �0Dza��H;,Mx@�ɍ�Io"��D� C�Z�(� `��Β: ��Y�D��!RKK�0D*k�1�Hq-1�@����Iu"��4�C��(� `�tߒ5 �Z\����!�K�|0D�s�$6���$2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B� b D �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �align�+0��a0��a0�p�0���0�0�0��a0�`�0��0�0�0���0��a0���0���0���0�0�0��a0�`�0���0� �0���0���0�P�0���0�@"1�p#1�&1�0'1��)1�+1��x1��a0��y1��~1��1���1���1���1���1��..6�//6�0/06�`/16��/26��/36��/46� 296�P2:6��2;6��2<6��2=6�3>6�@3?6��3b6��3c6�6d6��.l6�/m6�0/n6�`/o6��/p6��/q6��/r6� 2w6�P2x6��2y6��2z6��2{6�3|6�@3}6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.&7�/'7�0/(7�`/)7��/*7��/+7��/,7� 217�P227��237��247��257�367�@377��3:7��3;7�6<7��.d7�/e7�0/f7�`/g7��/h7��/i7��/j7� 2o7�P2p7��2q7��2r7��2s7�3t7�@3u7��3x7��3y7�6z7��6�7��a0��6�7��a0��6�7�7�7��a0�07�7�P7�7��b0�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6 � �M#s#��B݌`0�p7$� �M #{���B߬`0��7,� �N #���B�`0��:2� �� #�C�����`0��6=� ��#q���܀a0�P7a� ܍#ys���ޠa0��7i� ��#������a0�P:m� �#������a0� 3 D �0�0�`� 3 Ip�0(�1ð� C03 N��0<3�� �D3 S�0PA4�P� �D3 W��0`A4Ð� �D3 [�0pA4��� �D3 _3 a�� �`0�0�0�A3 e�� �`0�p�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�A��0�A�0�A�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�D��0�D��0�D�0�D�0�D �0�Dp�0�Dp�0�D��0�D��0�D�0�D�0�D��0�D�0�D�0�D�3 0�� �L11�0M�0�D@3 6�� N71Ð�K�0�D3 ;�� O41��M�0�Dp3 ?�� X41��M�0�Ep3 c�� Y11�PAL�0�E@3 g�� Z71Ð�M�0�E�3 k�� [11��M�0�E@3 o�� \71�M�0�Ep3 s�� ]/1�PAL�0�E3 w�� ^41Ð�M�0�Ep3 {�� _11��AL�0�E@3 �� h71��M�0�F@3 ��� i71�P�K�0�F3 ��� j41ÐM�0�Fp3 ��� k/1��AL�0�F3 ��� l41��M�0�Fp3 ��� m71�P�M��h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�������������������������������������������������������������������������������������������������������������������������������������������������������H`��q��kK�s�+��K{s%�������\�����������FQ ۸ �� �� �� �� ���(�8�H�X�h�x���������������� )9IYiy��������0 12)394I5Y6i7y8�9�:�;�<�=�>�?�P QR)S9TIUYViWyX�Y�Z�[�\�]�^�_�p qr)s9tIuYviwyx�y�z�{�|�}�~��� ��)�9�I�Y�i�y����������������� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �d��\Ǝ������4Ma A,$� � �d��\Ǝ������4Ma A,T� � ��6C�A8 ��\��`�������4M֎������4Ma A,�� � ��6C�A8 ��\��`�������4M֎������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,D� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`�������4M֎������4Ma A,� � ��6C�A8 ��\��`�������4M֎������4Ma A,D� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,t� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � �d��\Ǝ������4Ma A,4� � �d��\Ǝ������4Ma A,d� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,D� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,t� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,� � ��6C�A8 ��\��`֎������4M�������4Ma A,4� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,d� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � �d��\Ǝ������4Ma A,4� � ��6C�A8 ��\��`֎������4M�������4Ma A,d� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,$� � ��6C�A8 ��\��`֎������4M�������4Ma A,T� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,T� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma Ĉ�� ��� �pC`f0��,�0K0 TD�B�@֎0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1֏`NSٽ &$@#�����& ұ<� �&$@#������#��Twm� ��4Ս�?� 0��#�,6o�� V�`NS�&��T8m� ��<4n���4�m���4Un���4o���4��#��T5n���4U��:B�:B=!�n� ��<wn���4�M�>�!8Meۆ�@���>�!8Me�a Ĉ�� �� �pC`f0��,�0K0 TD�B�@֎0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1֏`NSٽ &$@#�����& ұ<� �&$@#������#��Twm� ��4Ս�?� 0��#�,6o�� V�`NS�&��T8m� ��<4n���4�m���4Un���4o���4��#��T5n���4U��:B�:B=!�n� ��<wn���4�M�>�!8Meۆ�@���>�!8Me�a ���� �� ˆ�� �G�B�@����Ǝ�P���֎@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|ğ\p�����A|ԟ����A|ܟ\p�@�@T� WC��5֏`NSٽ!& ұ<� ��#��T7n� ��4խ[`�!8Mu��0�`� ��4�[b��D&�@̀[<B!8Me�<B!8M�>B!Q}[=B!8M��;!8Me���4U][>�!8MU��`��ܷ&��Txo� ��4U��:B�:B;B =!�n� �, na�!˂�f�`NS��#@3Դ�#��T�m���4��?!�a ���� �{ ˆ�� �G{B�@����Ǝ֎`�����#�,>Ra ���� ��z A�@����Ǝ@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|ğ\p�@@��A|ԟ�@��A|ܟ\p�@�@T� WC��5��`NSټ!& ұ<� �&��T7m� ��4�m�`�!8Mu��`��ػ�# @3Xa�!8M��f�`NS�%&Nd� ��4��`�!�r�&�@̀[<B!8Me[=B!8M��<B!8M��;!8Me���4U][>�!8MU㦏`NSպ�#��T5o��tD�m�`�A`��`��tD�&�,�m�� 5m���4�}?!�a ���� �G� ˆ�� ć�B�@����Ǝ�P���֎@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|ȟ����A|П\p�@�@T� WC��5֏`NSٽ�#�,��`NSٶ!& ұ<� ��#��T7n� ��4խ[`�!8Mu��0�`� ��4�[b��D�PNS�V�`NS��#��T��#@3���PHGT���@NSY=B!8M��=�!8MUז�`NSո&��T�m� ��4U��:B�:B;B =!�n��,�}�`�!˂�F�`����#@3Դ�#��T6a ���� ć ˆ�� ��B�@����Ǝ֎`�����#�,>Ra ���� �G A�@����Ǝ@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|ȟ�@��A|П\p�@�@T� WC��5��`NSټ!& ұ<� �&��T7m� ��4�m�`�!8Mu��`��ػ�# @3Xa�!8M��f�`NS�&��T�n� �,˭�<4n���4�m���4Un���4o� �>B!Q}�;!8Me���4U][>�!8MU㦏`NSպ�#��T5o�`�A`��`��tD�&�,�m�� 5m���4�}?!�a Ĉ�� �� ˆ�� �G��pC�f0��,�0K0 TD B�@ �@N3�;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|ȟ\p�����A|؟����A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��AƘ��������0H�b��tD�����������0�`���4�m���4Un���4o��,�}<!8Me���4U]�>�!8MU㦎��6�`��න#�&�,8o�� 5m���4�m[?!�b���4���?�!8Me��`NSݸ&��T�n� ��<&�`NSݼ-&��&��T8n� ��a�!8M��6�@̀[>B!Q}�a�!8M�צ�`NS��#��֘`NS�9&��T� a Ĉ�� �G� ˆ�� ć��pC�f0��,�0K0 TD B�@ �@N3�;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|̟����A|ԟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��AƘ��������0H�b��tD�����������0�`���4�m���4Un���4o��,�}<!8Me���4U]�>�!8MU㦎��6�`��න#�&�,8o�� 5m���4�m[?!�b���4���?�!8Me��`NSݸ&��T�n� ��<&�`NSݼ-&��&��T8n� ��a�!8M��6�@̀[>B!Q}�a�!8M�צ�`NS��#��֘`NS�9&��T� a � ��A|�_ d����Ǝ֎0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� ��� �w�E�9� \p\�����A|�\p\@�@T WC��<��`NSټ1& ұ<� �&��T�m� ��4Ս�`�!8Mu�V�`NSݼ&��Two�� v�`NS�%&��T�n� ��<4n���4�m���4Un���4o��tD�m���4��#��Tum���4U��b�!8M�ۦ�`NS崩#��#��#��#�톘`����# �0aB ý�=B4CM�>�!8Me۶�`NSٸ�#��Tvn���4��`!�a A ��A|�W d����Ǝ֎0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� ��� �w�E�9� \p\@�@��A|�\p\@�@T WC��<&�`NSټ1& ұ<� � &��T7m� ��4�m�a�!8Mu�v�`NSݹ�# @3Xb�!8M�Ӧ�`NS�-&��T8n� ��<4n���4�m� �,���<B!8M�[=B!8M�>B!Q}�;!8Me���4U][>�!8MU㦏`NSպ�#��T5o���4Uݛ:B�:B;B =!�n�0 F�P�p�f�P�P��`NSٴ�#��T�m� �,�&��T�a � ��A|�^ d����Ǝ֎0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|��\p\@�@T WC��<��`NSټ1& ұ<� �&��T�m� ��4Ս�`�!8Mu�V�`NSݼ&��Two�� v�`NS�%&��T�n� ��<4n���4�m���4Un���4o��tD�m���4��#��Tum���4U��b�!8M�ۦ�`NS崩#��#��#��#�톘`����# �0aB ý�=B4CM�>�!8Me۶�`NSٸ�#��Tvn���4��`!�a A ��A|�W d����Ǝ֎0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �� �w�E�9� \p\@�@��A|��\p\@�@T WC��<&�`NSټ1& ұ<� � &��T7m� ��4�m�a�!8Mu�v�`NSݹ�# @3Xb�!8M�Ӧ�`NS�-&��T8n� ��<4n���4�m���4Un���4o��tD�m� �,���;!8Me���4U][>�!8MU㦏`NSպ�#��T5o���4Uݛ:B�:B;B =!�n�0 F�P�p�f�P�P��`NSٴ�#��T�m� �,�&��T�a � ��A|�_ 7x`� �� ��@@� d ��0�c�`�A`��`�0 �@N3�;!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H�`NSټA&$@#�����M& ұX<� �5&$@#����� &��T�m� ��4Սa�!8Mu�Ƙ0�c� ��4���a�!8Mu���P̓���0�`� ��4^�b�!8M��6�@̀�<B!8Me[>B!Q}=B!8M�<!8Me���4U]�>�!8MU�f�PNS�`NSἩ#��#��#��#�햘`���9&��Tym� ��4U�[?� �I&��Tyo� 0 �n�� 5m� ��>�!8Me�Ə`NSٸ�#��Tvn���4��[`!�a � ��A|�^ 7x`� �� ��@@� d ��0�c�`�A`��`�0 �@N3�;!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H�`NSټA&$@#�����M& ұX<� �5&$@#����� &��T�m� ��4Սa�!8Mu�Ƙ0�c� ��4���a�!8Mu���P̓���0�`� ��4^�b�!8M��6�@̀�<B!8Me=B!8M��=B!8M�[>B!Q}<!8Me���4U]�>�!8MU��`NS�-&��T8o�`�A`��`� ��4U�[=!�n� �, �[d�!8M��֏0�`� 0 �n�� 5m� ��>�!8Me�Ə`NSٸ�#��Tvn���4��[`!�a ���� �� �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎@��a ���� �{ �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎`���a ���� �G� �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎@��a ���� ć �p1�����Q�D8 �0�c�`�A`���4�n����#��T֎`���a bA,@��Uz�P��w@!�^p��x�pr2b` ��~Bp�p r2b` �Bp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<�`NSٽ&��-& ұX<� ��#��Twm� ��4�}�`�!8Mu��0�c� ��4�͛`�!8Mu�֏`��ؼ�# @3Xa�!8M��v�`NS�!&��T�m� ��<4n���4�m���4Un���4o���4��#OD ���=�!8MU㆏`NSպ%&��T8o�`�A`��ÿ8V�@HG��b�!8M�Ӧ�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` ��~Bp�p q1b` �Bp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<�`NSٽ-& ұX<� � &��T7m� ��4�]a�!8Mu�V�`NSݺ& ��a�!8Mu�֏`��ظ!&��Two�� ��`NS�)&��T8n� ��<4n���4�m���4Un���4o���4��#��T5m���4Um;��D����#��T�n���4U͛:B�:BX;��D��/��#��f�P�s�Ə`NSٴ�#�,�`NSٹ�#��T�a bA,@��Uz�P��w@!�^p��x�pr2b` �~Bp�p r2b` ��~Bp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<�`NSٽ&��-& ұX<� ��#��Twm� ��4�}�`�!8Mu��0�c� ��4�͛`�!8Mu�֏`��ؼ�# @3Xa�!8M��v�`NS�!&��T�m� ��<4n���4�m���4Un���4o���4��#OD ���=�!8MU㆏`NSպ%&��T8o�`�A`��ÿ8V�@HG��b�!8M�Ӧ�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �~Bp�p q1b` ��~Bp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<�`NSٽ-& ұX<� � &��T7m� ��4�]a�!8Mu�V�`NSݺ& ��a�!8Mu�֏`��ظ!&��Two�� ��`NS�)&��T8n� ��<4n���4�m���4Un���4o���4��#��T5m���4Um;��D����#��T�n���4U͛:B�:BX;��D��/��#��f�P�s�Ə`NSٴ�#�,�`NSٹ�#��T�a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �������@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ���� �H� A�@����Ǝ@��a ���� ��� A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ������ ��#�,a ��A� ����� ��#�,a ���� ��� A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ������ ��#�,a ���� �H� A�@����Ǝ@��a ���� �ȿ A�@����Ǝ@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ���� �Ȼ A�@����Ǝ@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �������@��a ��A� 䇹�����@��a ���� �H� A�@����Ǝ@��a ���� �ȸ A�@����Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ���� �Ȭ A�@����Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ���� �ȩ A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ���� �Ȩ A�@����Ǝ@��a ���� ��� B�A8����Ǝ0@�c��, a ��A� ��������@��a ��A� �������@��a ��A� Ȉ������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� Ȉ������@��a ��A� �������@��a ���� �ț A�@����Ǝ@��a ���� Ј� B�A8����Ǝ֎@��a ���� �Ț A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ���� ؈� B��@����@H�;!<Sa ���� �� B��@����@H�;!<Sa ��A� �������@��a ��A� ��������@��a ���� �H� A�@����4Ǝ@��a ��A� ��������@��a ��A� �������@��a ���� �ȋ A�@����4Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ������ �� A�@����Ǝ@NSY;!�a � ����� ��B�@����Ǝ@NSY;!�a ���� �G A�@����Ǝ@��a ���� �G A�@����Ǝ@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa ���� �I~ A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ���� ��{ A�@����Ǝ@��a � ����� ��{B�@����Ǝ@NSY;!�a ������ ��{ A�@����Ǝ@NSY;!�a ���� ��z A�@����Ǝ@��a ���� ��z A�@����Ǝ@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa ���� ��y A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Ț A�@����Ǝ@��a ���� �o A�@����Ǝ@��a � ����� �HoB�@����Ǝ@NSY;!�a ������ �Ho A�@����Ǝ@NSY;!�a ���� � n A�@��0T�b�0 !IƎ@��a ���� ��m A�@��0T�b�0 !IƎ@��a ��A#�` &�5���0T�b�0 !IƎ04�a��, a ��A#�` &�5���0T�b�0 !IƎ04�a��, a ���� ��l A�@��0T�b�0 !IƎ@��a ���� � l A�@��0T�b�0 !IƎ@��a ���� ��k A�@��0T�b�0 !IƎ@��a ���� � k A�@��0T�b�0 !IƎ@��a ���� ��j A�@��0T�b�0 !IƎ@��a ���� � j A�@��0T�b�0 !IƎ@��a ���� ��i A�@��0T�b�0 !IƎ@��a ���� � i A�@��0T�b�0 !IƎ@��a ���� ��h A�@��0T�b�0 !IƎ@��a ���� � h A�@��0T�b�0 !IƎ@��a ���� ��_ A�@��0T�b�0 !IƎ@��a ���� � _ A�@��0T�b�0 !IƎ@��a ���� ��^ A�@��0T�b�0 !IƎ@��a ���� � ^ A�@��0T�b�0 !IƎ@��a ���� ��] A�@��0T�b�0 !IƎ@��a ���� ,u5A�@Ǝ0T�b�0 !I��p�a��, a ���� ,s5A�@Ǝ0T�b�0 !I��p�a��, a ���� � \ A�@��0T�b�0 !IƎ@��a ���� ��[ A�@��0T�b�0 !IƎ@��a ���� �I[ B�A8Ǝ0T�b�0 !I��p�a��, a �ȈA� ��Z� ����@�@ ֎0�c���4��#��T�PNS���PNS�Ǝ@��a �ȈA� � Z� ����@�@ ֎0�c���4��#��T�PNS���PNS�Ǝ@��a ;J,@ �� �� ������a��pC�`0�0���� � [%�1K� 7�2F0bp p�V���#�`'m�,�,�1PAD!��@y(�p�$��A86�`��Խ�# �<B!0OM>�!8̀Ӗ�`N3��#�,7m�� ��#�,wo���<vm���4��#��#��#��#�,a 9J,@ �� �� ������Q�$� E��,�@#�`�#f���p�Q��,Ca#�`�#g�$�Lj�� ��Y-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3v�`N3ؼ�#�� �@̳>�!8�`�F�`��ص�# �:B�:BX=�!�b�6�P�S��@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#a���p�Q��,Ca#�`�#b�$�Lj�� ��X-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3f�@N3X<!0�n��,�]�;� 0��#��#��#�,�n���<un���4��>�!8�`��@��a 9J,@ �� �� �����Q�$� E��,�@#�`�#<���p�Q��,Ca#�`�#=�$�Lj�� �HO-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3f�@N3X<!0�n��,�]�;� 0��#��#��#�,�n���<un���4��<!�b���4��a 5J,@� ���,C #�`�4E�$� ���,�@#�`�5e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�/E�$� ���,�@#�`�0e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�'*E�$� ���,�@#�`�'+e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�'%E�$� ���,�@#�`�'&e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 7J,@ �� �� �����T1K� 7x� �����1K� 7�2F0bP |2R�,�1bP |2R�,�1PAD!��@y(�p�$��A8�0�c�`���4��#�3f�`N3Զ�#�� �m��,Kn���<��#�,��#����@��=�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |�O�,�1bP |�O�,�1PAD!��@y(�p�$��A8�0�c�`���4��#�3f�`N3Զ�#�� �m��,Kn���<��#�,��#����@��=�!�R�a � �X�@����@0�@;!8Ma � �T�@����@0�@;!8Ma � �`�@����@0�@;!8Ma ���� �I< A�@��0T�b�0 !IƎ@��a ���� ��; A�@��0T�b�0 !IƎ@��a ���� �I; A�@��0T�b�0 !IƎ@��a ���� ��: A�@��0T�b�0 !IƎ@��a ���� �I: A�@��0T�b�0 !IƎ@��a ���� ��9 A�@��0T�b�0 !IƎ@��a ���� �I9 A�@��0T�b�0 !IƎ@��a ���� ��8 A�@��0T�b�0 !IƎ@��a ���� �I8 A�@��0T�b�0 !IƎ@��a ���� ��/ A�@��0T�b�0 !IƎ@��a ���� �I/ A�@��0T�b�0 !IƎ@��a ���� ��. A�@��0T�b�0 !IƎ@��a ���� �I. A�@��0T�b�0 !IƎ@��a ���� ��- A�@��0T�b�0 !IƎ@��a ���� �I- A�@��0T�b�0 !IƎ@��a ���� ��, A�@��0T�b�0 !IƎ@��a ���� �I, A�@��0T�b�0 !IƎ@��a ���� ��+ A�@��0T�b�0 !IƎ@��a ���� �I+ A�@��0T�b�0 !IƎ@��a ���� ��* A�@��0T�b�0 !IƎ@��a ���� �J* A�@��0T�b�0 !IƎ@��a ���� ��) A�@��0T�b�0 !IƎ@��a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ���� �I( A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� ,*4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,(4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,&4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,$4A�@Ǝ0T�b�0 !I��p�a��, a ���� �� B�A8Ǝ0T�b�0 !I��p�a��, a ���� �  B�A8Ǝ0T�b�0 !I��p�a��, a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a �ȈA� �I����@NS�:�D�`��, a �ȈA� ������@NS�:�D�`��, a �ȈA� �I�� ����@�@ ֎0�c���4��#��T��#��T��#OD Ǝ@��a �ȈA� ���� ����@�@ ֎0�c���4��#��T��#��T��#OD Ǝ@��a ��A� � ����0<Sa ��A� ������0<Sa ��A� � ����0<Sa ��A� ������0<Sa ���d�@��<a ���d�@��<a ���d�@��<a ���d�@��<a ���p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a ���� ̇� B�A8Ǝ`8E!��# )��@�Da ��A� ����� a ���� �J����0�d�2a ��A� �����@0��a �pCPa0bp ��6�� Ap�A8��@<1�:��a A,@ � ������ ���B0����@<1�:��a �pCPa0bp ��6C� Ap�A8��@<1�:��a A,@� ������ ���B0����@<1�:��a A, 4�\W ��8�C:�C9�C8��:��8́���} #D�` a &A,@��3��<��9���9��������A���������������6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�!EB 4��# <� Qa 'A,@��3��<��9���9��������A���������������6!P�\Ď��| d ƎPX�0�PHT�#��pH�P a�CD&�@8��X<B!��a #A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ƎPX�0�0H�b�CD��P �2��0HTa $A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ ƎPX�0��PHT�#��0T@d��@,`��t,>a %A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�P��#�L��# a 'A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d ƎPX�0�PHT�#��0T@d��@,`�����#ұ�a &A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�P��# �& )�0HTa 'A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d ƎPX�0�PHT�#��0T@d��4� H��#N�#�PH��#a &A,@�M5��<��9���9��������A���������������6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�!EB 4��# <� Qa #A,@�Ts�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ƎPX�0�0H�b�CD��P �2��0HTa %A,@�M5�<��9����;܃;��8́��������� }`l`l l 6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�P��#�L��# a &A,@�M5�<��9����9�C>��8́��������� }`l`l l 6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�P��# �& )�0HTa UA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a����m� 1!Q�T[>�!Q���V�PHT�#v�@8���>�!���f�PH��#6���L��0T@a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d��D>R���#N�#>b��t,>�#6���L>a OA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�PHT�#v�`HT�#��#(��D�D-Sm��t,>b[=B!���<BHLDH�2�:�P��#�La QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`��D>R���#ұ����<�HLDH�2�a TA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�PHT�#��P8��ܦ�`H��#��#(��D�D-Sm�����#�Hm��t,>b� 1!Q�d�CD��P �2a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD��P �2v�`8�����#ұ����<�HLDH�2���# �H�#a UA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�PHT�#F���L��#ұ��m�����#N�#��#�Hm��t,>b� 1!Q�d�CD���,@C���a XA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD���,@C����=��D>�#���HT�#���=�!�����#,��D�D-��a WA,(@��3��<��9���9��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m�� %����HT�#>R=�HLDH�2զ��H��#>b[=�!Q�����#ұ����=��D>�#6���L��0T@a QA,'@=s�A��:�;�A=��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;�1�� B`�����| ����@~p#G�`0��#F�`�'K@dƎPX�0v��HT�#>R>"����m� 1!Q�T=�!Q�����#ұ����<BHLDH�2�:�P��#�La WA,(@��3�<��9����;܃;��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m��D>�#��# ұ����F���L��#����<BHLDH�2�:�P��#�L��#N�#>b��t,>�#a WA,(@��3�<��9����9�C>��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m��D>�#��# ұ����F���L��#����<BHLDH�2�=�!�����# �:� a�b�����a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d��D>R���#N�#>b��t,>�#6���L>a [A,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����#R$�@C�=B"������<BHLDH�2����=�D>�#>b�CDV��HT�#>�#���8���>�#���H��#�����#8��D�D-S�#>a QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`��D>R���#ұ����<�HLDH�2�a TA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0v��HT�#�����#$ұ������#4��D�D-�����# �:B1�=B"Q�����>�"���>�#6���L���a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD��P �2v�`8�����# �H�#f�pH��#>b� 1!Q��#a ZA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����# N�#>�#f��H��#>�#6���L>�#��0T@d��@,`��D>�#>b�����#>b��t,>b���=�HLDH�2�>�#a XA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD���,@C����=��D>�#f�pH��#>b� 1!Q��#���HT�#��a [A,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����# N�#>�#f��H��#>�#6���L>�#��0T@d��4� H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a A,@�& !P�\Î$����L���&@�@ ֎PX�0&� 8��# ұ;�!EB 4��# <� Q��# )a A,@�& !P�\Î$����L���&@�@ ֎PX�0�PHT�#ƎpH�P a�����#ұ���# �:��a A,@�& !P�܈A� �J� �a� �A8 ֎PX�0�0H�b�CDƎP �2��@0��<� Qa A,@�& !P�܈A� �J� �a� �A8 ֎PX�0�PHT�#�PH��#��0T@d��@,`�H a A,@�& !P�\Î$����L���&@�@ ֎PX�0&� 8��# ұ�:�P��#�L��# )�0HTa A,@�& !P�\Î$����L���&@�@ ֎PX�0�PHT�#&�@8��X<B!���:�P��#�L��# )a A,@�O6!P\Ď$�����B$H0�� ֎PX�06� 8��# ұ�:�P��# �& )��@0��X<� Qa A,@�O6!P\Ď$�����B$H0�� ֎PX�0�PHT�#6�@8���<B!���:�P��# )Ǝ�,@C���a #A,@�& !P�\Î�A~� 2b� ��2J�0�#�`�+'d֎PX�0&� 8��# ұ;�!EB 4��#�,�m�CD��@0��<� Q��#�,a A,@�& !P�܈A� ��# �`�+.��!�&��A� ���� ֎PX�0V�`��Է�# ұ�:�P��#�L��# )�0HT`��, a "A,@�& !P�\Î�A~� 2b� ��2 �0�#�`�+'d֎PX�0&� 8��# ұ�=�!�R߶�0T@d��@,`�H��# �<!�a #A,@�O6!P\Ď�A~�L2b� �3K$�hB�����L�A8֎PX�06� 8��# ұ�=�!�R߶�0T@d�H��# �& )�0HT`��, a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0V�PHT�#ƏP8��ܶ�`H��#��#(��D�D-Sm��t,>b�H��#R$�@C�>�!Q���v�@8���<BHLDH�2�:�Pa MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0ƎpH�P a��D>�#Əp8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#6���L>b��D>R�a FA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�PHT�#��`H��#��#(��D�D-Sm��t,>b�H��#$��D�D-��#�Hm�CDƎP �2a HA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ����<�HLDH�2���# �H�#a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�PHT�#ƏP8��ܶ�`H��#��#(��D�D-Sm��t,>b�H��#�Hm� 1!Q�d�����# ;B1�a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CDƎP �2��@0���=��D>�#f�pH��#>b� 1!Q��#���HT�#��a JA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�PHT�#֏P8���Ə`H��#��#(��D�D-Sm��t,>b�H��# �& )��`HT�#��#N�#F���L��0T@a MA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�pHT�#>b�����#Ə�H��#��X=HLDH�2�>b�CD��@0��;� a�b������=�!�����#,��D�D-���>"Q���>a MA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�'O`d֎PX�0F���L��#����:��b�����;�!EB 4��# ���Զ��H��#>b?��D>�#��#$��D�D-��# �=�!���a GA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ~�E�@֎PX�0F���L��#����:��b��D>�#��# ұ����6���L��0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�'O`d֎PX�0F���L��#����:��b�����?��D>�#��# ���Զ��H��#>b�<BHLDH�2�:�P��#�L��#ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<wsy��`n v@`�dl@q�ld {p�<�A��#E�`�;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ~�F�@֎PX�0V���L��#����:��b��4� H��#N�#>b�����ܶ��HT�#>R?"����m� 1!Q�d�CDv�pH��#>a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0ƎpH�P a��D>�#Əp8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#6���L>b��D>R�a PA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0���HT�#�����#R$�@C�=B"������<BHLDH�2����=�D>�#>b�CD��@0��X=B"Q�����?B�D>r����>�"���>�#F���L���a HA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ����<�HLDH�2���# �H�#a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0���HT�#�����#$ұ������#4��D�D-�����#8��D�D-S�#>b�CDƎP �2��@0��X=B"Q������>�"���>�#a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CDƎP �2��@0���=��D>�#f�pH��#>b� 1!Q��#���HT�#��a PA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d��@,`�H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a MA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�pHT�#>b�����#Ə�H��#��X=HLDH�2�>b�CD��@0��;� a�b������=�!�����#,��D�D-���>"Q���>a PA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#֏�8���>�#��0T@d�H��# �& )f��HT�#>�#Ə�H��#�����#8��D�D-S�#>a A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������pn0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������pn0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������pn0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������pnPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q�ě:��L��#��T5n���4U͛;BHLDH�2�<!8Me��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������pn`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������pn`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��# �Y<�HLDH�2�&�@NS<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��# �Y<�HLDH�2�&�@NS<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,T� y7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a OA,� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �Y<�!8MU��@NS�<B���>�HD4�<B���>�HD4a OA,D� �7W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#��T���L��# �<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� �7�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,D� �7�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� �7�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#E�`P3��A8��0<Sa A,��\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#E�`p3��A8��0<Sa 2A,4� �7�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� 8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2�&�������4MF�������4M���L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,T� y7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me��_�O�H#�d���4UM�<B���>�HD4a OA,� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a OA,D� �7W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!v�������4M����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� �7�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,D� �7�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� �7�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#E�`P3��A8��0<Sa A,��\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#E�`p3��A8��0<Sa 2A,4� �7�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� 8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��� ��#�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��� ��#�c��t �q }2"�\�3�U<�^�3��>�`�3�I�b�48FM�d�4XVX�f�5x�Z�h�5��]�j�5�Fi�l�6�Vl�n�6��n�p�6�y�r�78G}�t�7XW��v�8x���x�8����z�8�G��|�9�W��~�9�G����:P����:8�����:X�����;x@����;�P����;�@Ƀ��<��̃��=�ۃ��>8pꃔ�?X`����?x�����@�����A�����A�@(���B�@9���D�I���D8�X���EX�_���Fxo���G��~���H������I�����J�𫄰�J�����L80؄��Mh0߄��M��脼�N�0���N(����Nh0���N�����N�0����O�����OH0����O������O�@����O�����PH` ���P� ���P�� ���P ���PH����Q� ���Q�����Q(0���QH(����Q�(@���R�(�(���R)P*���RH)�+���R�)P-���R�)�.���R*`8���SH*�9���S�*�;���S�*@=���S+�>���SH+@H���T�+�I���T�+@K���T,�L���TH,�N���T�,X���U�,�Y���U-0[���UH-�\���U�-`^���U�-�_���V.pi���VH.�j���V�.pl���V�.�m���V/�o���W(/py���Wh/�}���X�/p����X�/����X�/�����X�/P����Y(80����YH8К���Y�8P����Z�8Ы���Z�8p����Z�8����Z9�����[89�����[x9p����[�9�����[�9pȅ��\:Pʅ��\X:0̅��\�:΅��\�:�υ��];�م��]X;�ۅ��]�;�݅��]�;�߅��^<����^X<p���_�<�����_�=P ���`8>0���a�>)���bx?08���c�?�9���c�?`;���cH@=���cHH ?���d�HI���d�H�J���dI�L���dHI�N���d�I�X���e�I`Z���eJ@\���eHJ ^���exJ h���f�J@j���f�J@l���fK n���fHKx���g�K�y���g�K�{���gL�}���gHL����h�L`����h�L@����hM ����hHM����h�M�����i�M�����iN�����iHN�����i�N�����j�Nઆ��jOଆ��jHO�����j�O�����k�O�����kX`����kHX@����k�X Ȇ��l�Xʆ��lY�ˆ��lHY�͆��l�Y�φ��m�Y�ن��mZPۆ��mHZ�݆��m�Z�߆��n�Z醮�n�Z@ꆰ�n[`놲�n8[�솴�nX[�톶�n�[`�o�[�����o\`����o(\�����oH\�����ph\� ���p�\����q�\����r�\�*���r�\�/���s]p<���t(]�O���uH]�i���vh]�|���x�]�����y�]�����{�]�����|�]ه��}^����(^����ɀH^`��x^������^@)�����^�,����^�8����_�<���8_�I���X_0[����x_Pl�����_~�����_����ʉ�_0�����_�����h�����8hp�����Xh����׏xh� ��Đ�h� �����hp�����h�����h�)���ip9��ړ8i�H��͔Xi�O����xi@[��Ε�i�^�����i�n�����i�}�����i������j������8jP�����Xj�����xj������j`�����j�������j�������j`�����k������8k����ȟXk0�����xk� ��ˠ�k���ȡ�k�(�����k�/�����k�<���l@I��פ8lpX����Xl�[��٥xlP_�����l�j��Ŧ�l�o��ŧ�lP�����l������m������8m �����Xmp�����xmp������m������m����ݭ�m�������m0�����n`���ѯ8n������Xn@ ����xn� �����np�����n@*����np9��ڳ�n�H����oL��۴8o`O����Xo`_����xo�n�����o�}�����op���¸�o ������oP�����x�����8x�����Xx������xx���¼�x`������x������x�������x����ǿyP�����8y�����Xy�����xy0.�����yP;�����ypH�����y X�����y�[����z�_����8z�k����Xz�x����xz0������z�������z�������zp������z �����{������8{P�����X{�����x{ ������{@������{� �����{� �����{����|����8|0+����X|p:����x| I�����|�O�����|�[�����|�_�����|`o����}~����8}������X}������x}�������}0������}0������}P������}P�����~p�����8~������X~`�����x~������~ ������~ �����~������~P)����8����8�<����X�I����xpX�����p\������h������l������y�����������8�������X�P�����x�`�������`������������؈��������@������ �����8������X�������x���������� �����������؉�������0,������:����8��I����X��M����x��Y������ i�������o����؊�~������`������@�����8������X������] ���.threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_61_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z6__shfliii_Z6__shfljii_Z9__shfl_upiji_Z9__shfl_upjji_Z11__shfl_downiji_Z11__shfl_downjji_Z10__shfl_xoriii_Z10__shfl_xorjii_Z6__shflfii_Z9__shfl_upfji_Z11__shfl_downfji_Z10__shfl_xorfii_Z6__shflxii_Z6__shflyii_Z9__shfl_upxji_Z9__shfl_upyji_Z11__shfl_downxji_Z11__shfl_downyji_Z10__shfl_xorxii_Z10__shfl_xoryii_Z6__shfldii_Z9__shfl_updji_Z11__shfl_downdji_Z10__shfl_xordii_Z6__shfllii_Z6__shflmii_Z9__shfl_uplji_Z9__shfl_upmji_Z11__shfl_downlji_Z11__shfl_downmji_Z10__shfl_xorlii_Z10__shfl_xormii_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! � !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L&� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��E䔁�ȡ��TT����*�PRE�Z� W5e�(�S�AU�_~��DU!�!ȪR@X�)H�R��/@\�ȫR�@`����4@d�� �,��w�EiQE(c-b��(Bn�[�G����"E��]TYRK�"�(�"���E�A���/B�hF�E�c0"�)B ��a�HI��L�� c��RR#Ȩ�"T#MV�_�ʊ@�Pt S�a2#�(�"$�uF����2\р$Z���"� W�u�V�+�P+�k�A��� �� ��pE\~�ke��.E�2\q�%$[��+�� W�% �V�+C�p+���A��� �!��pEb��oe���L�2\�)$\���"� W$� W�+�"��+�� Cʕ� Β!��p�g�sS�T0�@ �1�@F�"Xg]W��+�u��vE�n-��E��-�w�Q��� q�w�Q���"�`�]�^�Ӌ�3������"X�W����� �a4_�K��+�u��}E��1ʯ�IF��_��_f�!~��_� g��!�~F��  q�Z@� �H�B\�w�Ÿ��;��r�W�a1�� �$,�}`QX�+��W @� �4,���q�w����1 �q�cb!���H�B\��/��Ÿ��_~��2�W|F9�",w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �Q��0;�s � �e�p�c0 � ���`��q�b0�($r�8H1�`��`� @���\0S  ��L.�)��'���v@~� Ƒ��@;����P�` �|�q�b0�(�r�8X1�`$v�`� @�ڿ\0W  ��b� ���@;�� r�8`1�`d�A.G,�~5���` ���`� @����c��v@��r�c0���Y@t  ��x@ ȑ��@;�qd9�1�`T��+G-�FPp��` �P, �`� @��I����v@�)��q�b0�hOW0]  ���� Ʊ��@;��\�8x1�`TƂ+G/��Yp���` �Ph �`� @�zq����v@�.��q�c0�h�W0q  ��� �1��@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��_+0D*Y��H4K@�@��l �0"�-�C��%"v`�d���$ �З���!��S=�0Dja��H=LD�@�ɍ��0"�1!�C�X&��`�4�Ą$ �왘V�!RJ�K�0D�i�� �HjM<4@�)� �&"�6�C��&�� `�d�D� ����!҉RY0D�q�A �HhN@k@� � �-"�:�C�\'"� `���t �������!��S_0D { �HqOD�@�I� �4"�>1�C��'�� `��� �\��f��!��m0D�â� �H�XX�@�I �7"�cq�C��,"� `���� �䲘���!Ri�{0D����H�Y �@��= )>"�g�C$-�� `��� �ƴ`���!қ�|0D�ӂ��H�Z �@�)V g>"�j��C�u-�� `���3 �J�@���!R��|0D��"��Hl[L�@��o�h>"�n1�C��-�� `��4 �B�p���!� �|0D��™�Hm\@�@��� g>"�r�C�].�� `���E5 �F�����!�M�|0DZ납�Hw]0�@�i� �>"�v��C��.�� `��ޅs ��p���!R��}0D��b��H>^(�@� ͋e?"�y��C$>/�� `�tꅲ@ �b�`���!R�I~0D2����H�^ �@�I� f?"�|��C��/�� `����@ ���H���!R��~0D��"��Hy_ �@�)�$?"�~��C$�/�� `���ű@ �ĿH���!���~0D�����H�_�@�����?"��q�C�4�� `�$��" �r� B��!R�0D*C��Hmh�@�I��?"��a�C�P4�� `���F�@ �\�@F��!�-Ĉ0D�E)�H�h(%@�� �D"ѣ��C�~4�� `�D��@ �P�H���!RL�0D�I#�H`i#@��, EE"��Q�C$�4�� `����@ ���XX��!�j�0D�MC)�H�i%@� < �?"��Q�C��4�� `�D��@ ���@���!��0D*Q��H-j�@�IF��?"�A�C�5�� `�T�F�@ ���@���!���0D�SC�H�j#@��T��?"��A�C$Y5�� `���F�@ �~�@���!ҹ�0DbW#��H�j�@�i_��D"��q�C��5 `����"@ ���@���!R��0Dr[#��Hwk�@��o �?"��Q�C$�5�� `�4���@ �r�H���!���0DB_#��H�k�@��~��?"��a�C$6� `�Æ1"@ �l�@���!��0Dc���Hjl�@�ɍ �?"ٱQ�C�=6�� `�T���@ �X�P���!�-�0D�e��H�l$#@�i� gD"����C��6� `��ӆ2"@ ���h`��!\�0D�k#��H�m�@�ɴ EF"��q�C��6 `�$�"#@ ���H���!�|�0D�o��H!n�@��čDF"��a�C�7 `����!#@ ���h���!Ҝ�0D�s#�H�n#@�iՍ�F"ѺA�C$\7� `��F1"@ ���HF��!һň0D�w#��H�n�@�i��?"��a�C$�7�� `����@ ���H���!���0D�{#��Hyo�@��� �F"����C$�7 `�d��a#@ ���0���!���0D����H�o �@����G"��1�C�<�� `����@ �d�0���!�0D�����Hbx 8@�� �?"����C�R<�� `�t���@ ���P���!�;�0D��c��H!y �@�)%��?"���C��<�� `���@ ���H���!�_�0D*ͣ��H�y <@�I7��G"��A�C��<�� `�4� ���@���!҈�0DB��H0z`@��FL"�聀 C$3=0 `��& ���@���!���0D2��H�z <@��V�G�"���C$q= `���@ ���@���!��H|0D���H&{`@�ieL"��a� C��=0 `��& ���@���!R��0D���H�{ `@�)udD"���C��= `�Ի�# ���@t��!R���0D�߃ �H(|<b@��FL�"��� C$9>1 `��G$& �d�h���!�/��0D�� �H�|Dd@�ɥ��L�"��� C$�>1 `�d��#& �J�`���!Rl��0D� �H�}<b@�i�FL�"��� C$?1 `�$��#& ���`���!R���0Db�� �H�~<b@���FL�"��� C��?1 `���#& �t�X���!R���0D��� �H�<b@���FL�"��- ���` �H�@ C�D���!� "��0DC�1 �Hp�Df@�)��L�"�"� C$pD4 `��ȡ&0 ��)���!�>"���0D I�` �H&�`n@��'N�"�%�� C$�D8 `�d�'@ ������!�m" �0D�M$� �H�$<@�)>��G�"�'�� C$E `���H�#@ ��Ix��!R�" �0D�S��H��$<@��V��G�"�+��C�tE `�$��G' �`y���!��"�~0Dr[�� �H}�<�@��u��N"�/�C��E�� `����@ �v����!�#��0D:e�� �H��8x@�i�O�"�3�� C�F<; `���ȃ'@ ��y���!�^#�0DRm�� �H��pz@����O�"�8�� C�G> `����'@ ������!Ҫ#�0D�u�� �H�<|@� ߑ�O�"�<�� C��G>? `�D�� C$�G2 `�4�C&@ ��y���!� &��0D���1�Hk�8f@�)��L"�bҘ C�ZL3 `�4� c&@ ��1y���!�?&��0DZ��1�H:�8f@� -��L"�e� C��L3 `�D��c&@ ��3q���!|&��0D���1�H,�8f@�IG�gT"�iŒ C�:M,1 `����$&@ �z5����!�&��0D:���H=�Hb@��m�KL"�n2� C��M,3 `��� e&@ �F8����!�'��0Dz��"�H��Hd@�間�L"�s2� C��N�Q `�tӉ4*@ ��:�F��!h'Ө0D����H�\b@� �KL"�xr� C�6O.1 `�D��$&@ �n=����!һ'��0D���H:�Lb@���LL"�~B� C��O.3 `��Ie&@ �JP����!R*��0D�C�"�H��Ld@���L"գB� C��T,1 `����$&@ ��R����!j*��0D�M�2�H�Pf@��D��L"�R� C�8U,1 `�t��$&@ �rU����!�*��0DY�2�H9�Pf@��m��L"��R� C��U,1 `����$&@ �BX����!+��0DZc�2�H��Pf@�����L"��R� C��V,1 `�tӊ$&@ ��Z����!h+��0D�m�2�H�Pf@�����L"ѸR� C�4W,1 `���$&@ �b]����!�+��0D�w��H1�Hb@�i�KL"�2� C��W���!�+�@���l `��˴0D ��Z"��"-@ �Tq��H�L C�z\.4 `�Ē �&@ ��r����!^.�0Dj���H�Hb@��>�KL"��2� C�],3 `�T��d&@ �Pu����!ү.��0D����H)�Hb@�ig�KL"��2� C��],3 `��� e&@ ��w����!� /��0D���Hp�Db@�)�KL"��"� C�t^*3 `��ϋd&@ �`z����!�Y/��0D���H��Db@��KL"��"� C�_*3 `����d&@ ��|����!R�/��0D����H�Hb@�)�KL"��2� C��_,3 `���d&@ �h����!��/��0D����H5�Hb@�� �KL"�!3� C�Xd,3 `�t� e&@ �������!�L2��0D:KF)�Hq� l@�)/�T "�&3� C$�d(5�`�d�L�&@ �N����!��2�0DRS&��H{�d�@��V�("�+��  C$e�8 `�� v*@4 �Җy���!�2ة�0D�]�K�H��|�@�Ʌ�0H�Ho�x�@�����"�3��C��f�Z `�d� W  �D�Y���!Rk3�|�0D�mfZ�H��X���i��U"�8�� C�;g�U `�d�̵*@< �z�����!R�3�0Dy��H0�@�@� �)>"�=I �H�a���!�3�|0D�}��H��<�@�I�i>"�`#�C$l�� `��M4 �@�ad��!+6��0D��F��H��D�@���V"�d�� C$�lZ `�T��C+ �貑h��!�i6�0D��&��H��D�@�I?�V"�h�� C�m$[ `�t�Md+ ��ah��!�6 �0D����H��<�@��]�V"�l#� C$�m"Z `�4�MD+ �趙p��!��6��0D��f��H��X�@�� W"�p�� C�:n0\ `���ͅ+ �ȹ�p��!�>7�0Dr��� �H<�8�@�I��W"�v�� C$�n.^ `����. �D�����!R�7�0DZ���H��`�@�)� \"�{s� C$�o.p `����$. �侱���!�7��0D���H��L�@�I� \"��c� C�9t,p `���. �������!R>:�0D�I��Hg�,�@�I.��\"���� C$�ts `�4�Β.D �|�Y �H��,�@��>�]"��� C$u"y `�T�NT/ ���y���!R�:Ͼ0D�U���H��,���i^�%]�"���@ �R�Y���!�:Q�0D*['"�Hv�H'@� uIe"�� C$�u � `����53 �`�Yj��!�;��0D2c'��Hw�D=@� � l"�Ð C$svr `�$�c.D ���a���!�J;L�0D�i��"��Ð C$�v"v `���N�. �`ۑ���!�x;R�0D�o��H$�@�@��Ɲ�_"��Ø C�:w�t@`��0Dju�!�H��H!@�i��d"��3� C$�w&� `�4�N�2 ��މ`��!R�;��0D�}���H��07@���Ig"��#� C$|&� `���C. ���a���!�(>��0DzŇ1"�H��0�@�� `�4�C. ������!L>ѻ0D �G��Hs�H�@��4_"��� C��|* `���c.H �L�a� �!��> @��G�\"��#� C$>}$� `���t2 ����T��!�>Q�0D*�'��H6�\3@��m�f"���� C��}$� `�t���3 �������!�> �0DB�!�H4�0�@� ��\�"��ä C$<~��!)? �0D��'b�H��D�@�I�I^"��#� C$�~ | `�d��/ �������!�j?�� 0D��I$�H��0C��~r `��ߏ2 �Z��H��!ҏ?��0D��gR�H��D-@��֟f"��s� C$�� `���s3 �l��t��!�?R�0D��g�H��0�@�)��\"��Ø C��s `����.D �Rb �H51�@�) ��]"�!� C�Q�$y `�T��T/ ������!�=Bо0D:I���H< 1��� -!&]�"�%�@ �@b���!kBR�0D�MH"�H� M'@�iD�Ie"�(� C�3�"� `����53 �^bj��!ҮB��0D:WH��H� I=@�ie� l"�,Đ C$��r `�d�c.D �Db���!��BL�0D�]��"�/Đ C$��"v `�4�P�. �h����!�CR�0D�c��H� A�@� ���_"�3Ę C�|��t@`�T�0D�i�!�H= I!@��!�d"�64� C$چ&� `�t�P�2 ���`��!R�C��0Ds���Hl17@� �!Ig"�:$� C$^�&� `���#6 ��b���!��C �00D�y�!&�H?1f��i�!m"�=Ĉ C�ч$� `�T���6 ������!��C�0Dj�(��H>Et@�� #�n"�bĐ C�X���`�ԋ�6 ��1b���!R=F�0DB�h��H;Q|@��-#�o"�f$�C�ڌ$� `�t�F: ��3bL��!ҊF �0D��hR�HjM�@��O#�u"�jĈ C�^�� `���C6L ��5b�� �!R�F��00DjوA�H91b@��l#Im"�m$� C�ԍ&� `�Ļ�7 ��7����!G�0D��Ȳ�Hg1d�i�#�l�"�qĠ C�U�� `�t�ф7 ��9����!R?G�0D����HeI�@��#It"�v��C���� `����: ��;�T��!�G�0D��r�Hs1b@���#Fl"�zĐ C�[��``�4�c6L ��=b���!ҾG��0D:�HR�H9Il@�i���m"�}4� C�؏"� `�$�QD7 ��?����!R J �@0D�A�1(�Ha(1h@�� %Fl"�4� C$V�&� `���7 ��Q����!�IJ�0D�II�Hk)a�@�i4%�t"��ĠC�ݔ&� `����: �BT�\��!R�J��0D S��Hm*1d��)O%�l�"��Ę C�X�� `�ԫ#6 ��U����!ҾJ�0DjYir�H`+Mp@�in�Hn"��� C�ڕ,� `���C6P ��Wb� �!�K �0Dza��H;,Mx@�ɍ�Io"��D� C�Z�(� `��Β: ��Y�D��!RKK�0D*k�1�Hq-1�@����Iu"��4�C��(� `�tߒ5 �Z\����!�K�|0D�s�$6���$2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B� b D �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �align�+0��a0��a0�p�0���0�0�0��a0�`�0��0�0�0���0��a0���0���0���0�0�0��a0�`�0���0� �0���0���0�P�0���0�@"1�p#1�&1�0'1��)1�+1��x1��a0��y1��~1��1���1���1���1���1��..6�//6�0/06�`/16��/26��/36��/46� 296�P2:6��2;6��2<6��2=6�3>6�@3?6��3b6��3c6�6d6��.l6�/m6�0/n6�`/o6��/p6��/q6��/r6� 2w6�P2x6��2y6��2z6��2{6�3|6�@3}6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.&7�/'7�0/(7�`/)7��/*7��/+7��/,7� 217�P227��237��247��257�367�@377��3:7��3;7�6<7��.d7�/e7�0/f7�`/g7��/h7��/i7��/j7� 2o7�P2p7��2q7��2r7��2s7�3t7�@3u7��3x7��3y7�6z7��6�7��a0��6�7��a0��6�7�7�7��a0�07�7�P7�7��b0�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6 � �M#s#��B݌`0�p7$� �M #{���B߬`0��7,� �N #���B�`0��:2� �� #�C�����`0��6=� ��#q���܀a0�P7a� ܍#ys���ޠa0��7i� ��#������a0�P:m� �#������a0� 3 D �0�0�`� 3 Ip�0(�1ð� C03 N��0<3�� �D3 S�0PA4�P� �D3 W��0`A4Ð� �D3 [�0pA4��� �D3 _3 a�� �`0�0�0�A3 e�� �`0�p�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�A��0�A�0�A�0�A �0�Ap�0�Ap�0�A��0�A��0�A�0�A�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�B�0�B�0�B��0�B�0�B�0�B �0�Bp�0�Bp�0�B��0�B��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�C��0�C��0�C�0�C�0�C��0�C�0�C�0�C �0�Cp�0�Cp�0�D��0�D��0�D�0�D�0�D �0�Dp�0�Dp�0�D��0�D��0�D�0�D�0�D��0�D�0�D�0�D�3 0�� �L11�0M�0�D@3 6�� N71Ð�K�0�D3 ;�� O41��M�0�Dp3 ?�� X41��M�0�Ep3 c�� Y11�PAL�0�E@3 g�� Z71Ð�M�0�E�3 k�� [11��M�0�E@3 o�� \71�M�0�Ep3 s�� ]/1�PAL�0�E3 w�� ^41Ð�M�0�Ep3 {�� _11��AL�0�E@3 �� h71��M�0�F@3 ��� i71�P�K�0�F3 ��� j41ÐM�0�Fp3 ��� k/1��AL�0�F3 ��� l41��M�0�Fp3 ��� m71�P�M��h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�������������������������������������������������������������������������������������������������������������������������������������������������������H`��q��kK�s�+��K{s%�������\�����������FQ ۸ �� �� �� �� ���(�8�H�X�h�x���������������� )9IYiy��������0 12)394I5Y6i7y8�9�:�;�<�=�>�?�P QR)S9TIUYViWyX�Y�Z�[�\�]�^�_�p qr)s9tIuYviwyx�y�z�{�|�}�~��� ��)�9�I�Y�i�y����������������� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �d��\Ǝ������4Ma A,$� � �d��\Ǝ������4Ma A,T� � ��6C�A8 ��\��`�������4M֎������4Ma A,�� � ��6C�A8 ��\��`�������4M֎������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,D� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`�������4M֎������4Ma A,� � ��6C�A8 ��\��`�������4M֎������4Ma A,D� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,t� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � �d��\Ǝ������4Ma A,4� � �d��\Ǝ������4Ma A,d� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,D� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,t� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,� � ��6C�A8 ��\��`֎������4M�������4Ma A,4� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,d� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � �d��\Ǝ������4Ma A,4� � ��6C�A8 ��\��`֎������4M�������4Ma A,d� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,�� � �d��\Ǝ������4Ma A,�� � �d��\Ǝ������4Ma A,$� � ��6C�A8 ��\��`֎������4M�������4Ma A,T� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma A,T� � �d��\Ǝ������4Ma A,�� � ��6C�A8 ��\��`֎������4M�������4Ma A,�� � �6D0�B�@ ��\��`Ǝd��������4M�������4M�������4Ma A,�� � A�6E0��lCP ���������4M�������4M֎X��\��`Ǝd&�������4M�������4Ma Ĉ�� ��� �pC`f0��,�0K0 TD�B�@֎0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1֏`NSٽ &$@#�����& ұ<� �&$@#������#��Twm� ��4Ս�?� 0��#�,6o�� V�`NS�&��T8m� ��<4n���4�m���4Un���4o���4��#��T5n���4U��:B�:B=!�n� ��<wn���4�M�>�!8Meۆ�@���>�!8Me�a Ĉ�� �� �pC`f0��,�0K0 TD�B�@֎0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1֏`NSٽ &$@#�����& ұ<� �&$@#������#��Twm� ��4Ս�?� 0��#�,6o�� V�`NS�&��T8m� ��<4n���4�m���4Un���4o���4��#��T5n���4U��:B�:B=!�n� ��<wn���4�M�>�!8Meۆ�@���>�!8Me�a ���� �� ˆ�� �G�B�@����Ǝ�P���֎@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|ğ\p�����A|ԟ����A|ܟ\p�@�@T� WC��5֏`NSٽ!& ұ<� ��#��T7n� ��4խ[`�!8Mu��0�`� ��4�[b��D&�@̀[<B!8Me�<B!8M�>B!Q}[=B!8M��;!8Me���4U][>�!8MU��`��ܷ&��Txo� ��4U��:B�:B;B =!�n� �, na�!˂�f�`NS��#@3Դ�#��T�m���4��?!�a ���� �{ ˆ�� �G{B�@����Ǝ֎`�����#�,>Ra ���� ��z A�@����Ǝ@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|ğ\p�@@��A|ԟ�@��A|ܟ\p�@�@T� WC��5��`NSټ!& ұ<� �&��T7m� ��4�m�`�!8Mu��`��ػ�# @3Xa�!8M��f�`NS�%&Nd� ��4��`�!�r�&�@̀[<B!8Me[=B!8M��<B!8M��;!8Me���4U][>�!8MU㦏`NSպ�#��T5o��tD�m�`�A`��`��tD�&�,�m�� 5m���4�}?!�a ���� �G� ˆ�� ć�B�@����Ǝ�P���֎@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|ȟ����A|П\p�@�@T� WC��5֏`NSٽ�#�,��`NSٶ!& ұ<� ��#��T7n� ��4խ[`�!8Mu��0�`� ��4�[b��D�PNS�V�`NS��#��T��#@3���PHGT���@NSY=B!8M��=�!8MUז�`NSո&��T�m� ��4U��:B�:B;B =!�n��,�}�`�!˂�F�`����#@3Դ�#��T6a ���� ć ˆ�� ��B�@����Ǝ֎`�����#�,>Ra ���� �G A�@����Ǝ@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|ȟ�@��A|П\p�@�@T� WC��5��`NSټ!& ұ<� �&��T7m� ��4�m�`�!8Mu��`��ػ�# @3Xa�!8M��f�`NS�&��T�n� �,˭�<4n���4�m���4Un���4o� �>B!Q}�;!8Me���4U][>�!8MU㦏`NSպ�#��T5o�`�A`��`��tD�&�,�m�� 5m���4�}?!�a Ĉ�� �� ˆ�� �G��pC�f0��,�0K0 TD B�@ �@N3�;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|ȟ\p�����A|؟����A|��\p�� 7��� ���`�� 7��� ���#@�@T@ WC��AƘ��������0H�b��tD�����������0�`���4�m���4Un���4o��,�}<!8Me���4U]�>�!8MU㦎��6�`��න#�&�,8o�� 5m���4�m[?!�b���4���?�!8Me��`NSݸ&��T�n� ��<&�`NSݼ-&��&��T8n� ��a�!8M��6�@̀[>B!Q}�a�!8M�צ�`NS��#��֘`NS�9&��T� a Ĉ�� �G� ˆ�� ć��pC�f0��,�0K0 TD B�@ �@N3�;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|̟����A|ԟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��AƘ��������0H�b��tD�����������0�`���4�m���4Un���4o��,�}<!8Me���4U]�>�!8MU㦎��6�`��න#�&�,8o�� 5m���4�m[?!�b���4���?�!8Me��`NSݸ&��T�n� ��<&�`NSݼ-&��&��T8n� ��a�!8M��6�@̀[>B!Q}�a�!8M�צ�`NS��#��֘`NS�9&��T� a � ��A|�_ d����Ǝ֎0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� ��� �w�E�9� \p\�����A|�\p\@�@T WC��<��`NSټ1& ұ<� �&��T�m� ��4Ս�`�!8Mu�V�`NSݼ&��Two�� v�`NS�%&��T�n� ��<4n���4�m���4Un���4o��tD�m���4��#��Tum���4U��b�!8M�ۦ�`NS崩#��#��#��#�톘`����# �0aB ý�=B4CM�>�!8Me۶�`NSٸ�#��Tvn���4��`!�a A ��A|�W d����Ǝ֎0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� ��� �w�E�9� \p\@�@��A|�\p\@�@T WC��<&�`NSټ1& ұ<� � &��T7m� ��4�m�a�!8Mu�v�`NSݹ�# @3Xb�!8M�Ӧ�`NS�-&��T8n� ��<4n���4�m� �,���<B!8M�[=B!8M�>B!Q}�;!8Me���4U][>�!8MU㦏`NSպ�#��T5o���4Uݛ:B�:B;B =!�n�0 F�P�p�f�P�P��`NSٴ�#��T�m� �,�&��T�a � ��A|�^ d����Ǝ֎0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|��\p\@�@T WC��<��`NSټ1& ұ<� �&��T�m� ��4Ս�`�!8Mu�V�`NSݼ&��Two�� v�`NS�%&��T�n� ��<4n���4�m���4Un���4o��tD�m���4��#��Tum���4U��b�!8M�ۦ�`NS崩#��#��#��#�톘`����# �0aB ý�=B4CM�>�!8Me۶�`NSٸ�#��Tvn���4��`!�a A ��A|�W d����Ǝ֎0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �� �w�E�9� \p\@�@��A|��\p\@�@T WC��<&�`NSټ1& ұ<� � &��T7m� ��4�m�a�!8Mu�v�`NSݹ�# @3Xb�!8M�Ӧ�`NS�-&��T8n� ��<4n���4�m���4Un���4o��tD�m� �,���;!8Me���4U][>�!8MU㦏`NSպ�#��T5o���4Uݛ:B�:B;B =!�n�0 F�P�p�f�P�P��`NSٴ�#��T�m� �,�&��T�a � ��A|�_ 7x`� �� ��@@� d ��0�c�`�A`��`�0 �@N3�;!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H�`NSټA&$@#�����M& ұX<� �5&$@#����� &��T�m� ��4Սa�!8Mu�Ƙ0�c� ��4���a�!8Mu���P̓���0�`� ��4^�b�!8M��6�@̀�<B!8Me[>B!Q}=B!8M�<!8Me���4U]�>�!8MU�f�PNS�`NSἩ#��#��#��#�햘`���9&��Tym� ��4U�[?� �I&��Tyo� 0 �n�� 5m� ��>�!8Me�Ə`NSٸ�#��Tvn���4��[`!�a � ��A|�^ 7x`� �� ��@@� d ��0�c�`�A`��`�0 �@N3�;!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H�`NSټA&$@#�����M& ұX<� �5&$@#����� &��T�m� ��4Սa�!8Mu�Ƙ0�c� ��4���a�!8Mu���P̓���0�`� ��4^�b�!8M��6�@̀�<B!8Me=B!8M��=B!8M�[>B!Q}<!8Me���4U]�>�!8MU��`NS�-&��T8o�`�A`��`� ��4U�[=!�n� �, �[d�!8M��֏0�`� 0 �n�� 5m� ��>�!8Me�Ə`NSٸ�#��Tvn���4��[`!�a ���� �� �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎@��a ���� �{ �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎`���a ���� �G� �p1�����Q�D8 �0�c�`�A`����#��T��#��T֎@��a ���� ć �p1�����Q�D8 �0�c�`�A`���4�n����#��T֎`���a bA,@��Uz�P��w@!�^p��x�pr2b` ��~Bp�p r2b` �Bp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<�`NSٽ&��-& ұX<� ��#��Twm� ��4�}�`�!8Mu��0�c� ��4�͛`�!8Mu�֏`��ؼ�# @3Xa�!8M��v�`NS�!&��T�m� ��<4n���4�m���4Un���4o���4��#OD ���=�!8MU㆏`NSպ%&��T8o�`�A`��ÿ8V�@HG��b�!8M�Ӧ�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` ��~Bp�p q1b` �Bp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<�`NSٽ-& ұX<� � &��T7m� ��4�]a�!8Mu�V�`NSݺ& ��a�!8Mu�֏`��ظ!&��Two�� ��`NS�)&��T8n� ��<4n���4�m���4Un���4o���4��#��T5m���4Um;��D����#��T�n���4U͛:B�:BX;��D��/��#��f�P�s�Ə`NSٴ�#�,�`NSٹ�#��T�a bA,@��Uz�P��w@!�^p��x�pr2b` �~Bp�p r2b` ��~Bp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<�`NSٽ&��-& ұX<� ��#��Twm� ��4�}�`�!8Mu��0�c� ��4�͛`�!8Mu�֏`��ؼ�# @3Xa�!8M��v�`NS�!&��T�m� ��<4n���4�m���4Un���4o���4��#OD ���=�!8MU㆏`NSպ%&��T8o�`�A`��ÿ8V�@HG��b�!8M�Ӧ�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �~Bp�p q1b` ��~Bp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<�`NSٽ-& ұX<� � &��T7m� ��4�]a�!8Mu�V�`NSݺ& ��a�!8Mu�֏`��ظ!&��Two�� ��`NS�)&��T8n� ��<4n���4�m���4Un���4o���4��#��T5m���4Um;��D����#��T�n���4U͛:B�:BX;��D��/��#��f�P�s�Ə`NSٴ�#�,�`NSٹ�#��T�a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �����\��@��a ��A� �������@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ���� �H� A�@����Ǝ@��a ���� ��� A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ������ ��#�,a ��A� ����� ��#�,a ���� ��� A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ������ ��#�,a ���� �H� A�@����Ǝ@��a ���� �ȿ A�@����Ǝ@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ���� �Ȼ A�@����Ǝ@��a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �������@��a ��A� 䇹�����@��a ���� �H� A�@����Ǝ@��a ���� �ȸ A�@����Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ���� �Ȭ A�@����Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ���� �ȩ A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ���� �Ȩ A�@����Ǝ@��a ���� ��� B�A8����Ǝ0@�c��, a ��A� ��������@��a ��A� �������@��a ��A� Ȉ������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� Ȉ������@��a ��A� �������@��a ���� �ț A�@����Ǝ@��a ���� Ј� B�A8����Ǝ֎@��a ���� �Ț A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ���� ؈� B��@����@H�;!<Sa ���� �� B��@����@H�;!<Sa ��A� �������@��a ��A� ��������@��a ���� �H� A�@����4Ǝ@��a ��A� ��������@��a ��A� �������@��a ���� �ȋ A�@����4Ǝ@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ��A� ��������@��a ��A� �������@��a ������ �� A�@����Ǝ@NSY;!�a � ����� ��B�@����Ǝ@NSY;!�a ���� �G A�@����Ǝ@��a ���� �G A�@����Ǝ@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa ���� �I~ A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� ��} A�@����Ǝ@��a ���� �H� A�@����Ǝ@��a ���� ��{ A�@����Ǝ@��a � ����� ��{B�@����Ǝ@NSY;!�a ������ ��{ A�@����Ǝ@NSY;!�a ���� ��z A�@����Ǝ@��a ���� ��z A�@����Ǝ@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��T������@���<BS,�Oa ���� ��y A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Iy A�@����Ǝ@��a ���� �Ț A�@����Ǝ@��a ���� �o A�@����Ǝ@��a � ����� �HoB�@����Ǝ@NSY;!�a ������ �Ho A�@����Ǝ@NSY;!�a ���� � n A�@��0T�b�0 !IƎ@��a ���� ��m A�@��0T�b�0 !IƎ@��a ��A#�` &�5���0T�b�0 !IƎ04�a��, a ��A#�` &�5���0T�b�0 !IƎ04�a��, a ���� ��l A�@��0T�b�0 !IƎ@��a ���� � l A�@��0T�b�0 !IƎ@��a ���� ��k A�@��0T�b�0 !IƎ@��a ���� � k A�@��0T�b�0 !IƎ@��a ���� ��j A�@��0T�b�0 !IƎ@��a ���� � j A�@��0T�b�0 !IƎ@��a ���� ��i A�@��0T�b�0 !IƎ@��a ���� � i A�@��0T�b�0 !IƎ@��a ���� ��h A�@��0T�b�0 !IƎ@��a ���� � h A�@��0T�b�0 !IƎ@��a ���� ��_ A�@��0T�b�0 !IƎ@��a ���� � _ A�@��0T�b�0 !IƎ@��a ���� ��^ A�@��0T�b�0 !IƎ@��a ���� � ^ A�@��0T�b�0 !IƎ@��a ���� ��] A�@��0T�b�0 !IƎ@��a ���� ,u5A�@Ǝ0T�b�0 !I��p�a��, a ���� ,s5A�@Ǝ0T�b�0 !I��p�a��, a ���� � \ A�@��0T�b�0 !IƎ@��a ���� ��[ A�@��0T�b�0 !IƎ@��a ���� �I[ B�A8Ǝ0T�b�0 !I��p�a��, a �ȈA� ��Z� ����@�@ ֎0�c���4��#��T�PNS���PNS�Ǝ@��a �ȈA� � Z� ����@�@ ֎0�c���4��#��T�PNS���PNS�Ǝ@��a ;J,@ �� �� ������a��pC�`0�0���� � [%�1K� 7�2F0bp p�V���#�`'m�,�,�1PAD!��@y(�p�$��A86�`��Խ�# �<B!0OM>�!8̀Ӗ�`N3��#�,7m�� ��#�,wo���<vm���4��#��#��#��#�,a 9J,@ �� �� ������Q�$� E��,�@#�`�#f���p�Q��,Ca#�`�#g�$�Lj�� ��Y-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3v�`N3ؼ�#�� �@̳>�!8�`�F�`��ص�# �:B�:BX=�!�b�6�P�S��@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#a���p�Q��,Ca#�`�#b�$�Lj�� ��X-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3f�@N3X<!0�n��,�]�;� 0��#��#��#�,�n���<un���4��>�!8�`��@��a 9J,@ �� �� �����Q�$� E��,�@#�`�#<���p�Q��,Ca#�`�#=�$�Lj�� �HO-�,�1PAD!��@y(�p�$��A8&�`��Է�#�3f�@N3X<!0�n��,�]�;� 0��#��#��#�,�n���<un���4��<!�b���4��a 5J,@� ���,C #�`�4E�$� ���,�@#�`�5e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�/E�$� ���,�@#�`�0e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�'*E�$� ���,�@#�`�'+e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 5J,@� ���,C #�`�'%E�$� ���,�@#�`�'&e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP �֎0�c�`���4��#�3V�`N3Զ�#�� �m��,Kn���<��#�,��#���@���<�!�R�a 7J,@ �� �� �����T1K� 7x� �����1K� 7�2F0bP |2R�,�1bP |2R�,�1PAD!��@y(�p�$��A8�0�c�`���4��#�3f�`N3Զ�#�� �m��,Kn���<��#�,��#����@��=�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |�O�,�1bP |�O�,�1PAD!��@y(�p�$��A8�0�c�`���4��#�3f�`N3Զ�#�� �m��,Kn���<��#�,��#����@��=�!�R�a � �X�@����@0�@;!8Ma � �T�@����@0�@;!8Ma � �`�@����@0�@;!8Ma ���� �I< A�@��0T�b�0 !IƎ@��a ���� ��; A�@��0T�b�0 !IƎ@��a ���� �I; A�@��0T�b�0 !IƎ@��a ���� ��: A�@��0T�b�0 !IƎ@��a ���� �I: A�@��0T�b�0 !IƎ@��a ���� ��9 A�@��0T�b�0 !IƎ@��a ���� �I9 A�@��0T�b�0 !IƎ@��a ���� ��8 A�@��0T�b�0 !IƎ@��a ���� �I8 A�@��0T�b�0 !IƎ@��a ���� ��/ A�@��0T�b�0 !IƎ@��a ���� �I/ A�@��0T�b�0 !IƎ@��a ���� ��. A�@��0T�b�0 !IƎ@��a ���� �I. A�@��0T�b�0 !IƎ@��a ���� ��- A�@��0T�b�0 !IƎ@��a ���� �I- A�@��0T�b�0 !IƎ@��a ���� ��, A�@��0T�b�0 !IƎ@��a ���� �I, A�@��0T�b�0 !IƎ@��a ���� ��+ A�@��0T�b�0 !IƎ@��a ���� �I+ A�@��0T�b�0 !IƎ@��a ���� ��* A�@��0T�b�0 !IƎ@��a ���� �J* A�@��0T�b�0 !IƎ@��a ���� ��) A�@��0T�b�0 !IƎ@��a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ��A#�` &�4���0T�b�0 !IƎ04�a��, a ���� �I( A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� �I A�@��0T�b�0 !IƎ@��a ���� �� A�@��0T�b�0 !IƎ@��a ���� ,*4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,(4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,&4A�@Ǝ0T�b�0 !I��p�a��, a ���� ,$4A�@Ǝ0T�b�0 !I��p�a��, a ���� �� B�A8Ǝ0T�b�0 !I��p�a��, a ���� �  B�A8Ǝ0T�b�0 !I��p�a��, a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a ���� �I�A�@��0T�b�0 !IƎ@��a ���� ���A�@��0T�b�0 !IƎ@��a �ȈA� �I����@NS�:�D�`��, a �ȈA� ������@NS�:�D�`��, a �ȈA� �I�� ����@�@ ֎0�c���4��#��T��#��T��#OD Ǝ@��a �ȈA� ���� ����@�@ ֎0�c���4��#��T��#��T��#OD Ǝ@��a ��A� � ����0<Sa ��A� ������0<Sa ��A� � ����0<Sa ��A� ������0<Sa ���d�@��<a ���d�@��<a ���d�@��<a ���d�@��<a ���p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a ���� ̇� B�A8Ǝ`8E!��# )��@�Da ��A� ����� a ���� �J����0�d�2a ��A� �����@0��a �pCPa0bp ��6�� Ap�A8��@<1�:��a A,@ � ������ ���B0����@<1�:��a �pCPa0bp ��6C� Ap�A8��@<1�:��a A,@� ������ ���B0����@<1�:��a A, 4�\W ��8�C:�C9�C8��:��8́���} #D�` a &A,@��3��<��9���9��������A���������������6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�!EB 4��# <� Qa 'A,@��3��<��9���9��������A���������������6!P�\Ď��| d ƎPX�0�PHT�#��pH�P a�CD&�@8��X<B!��a #A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ƎPX�0�0H�b�CD��P �2��0HTa $A,@=s�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ ƎPX�0��PHT�#��0T@d��@,`��t,>a %A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�P��#�L��# a 'A,@��3�<��9����;܃;��8́��������� } l l l 6!P�\Ď��| d ƎPX�0�PHT�#��0T@d��@,`�����#ұ�a &A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d ƎPX�0&� 8��# ұ�:�P��# �& )�0HTa 'A,@��3�<��9����9�C>��8́��������� } l l l 6!P�\Ď��| d ƎPX�0�PHT�#��0T@d��4� H��#N�#�PH��#a &A,@�M5��<��9���9��������A���������������6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�!EB 4��# <� Qa #A,@�Ts�A��:�;�A=��������A���������������& !P�܈�Q� ��pA�@ƎPX�0�0H�b�CD��P �2��0HTa %A,@�M5�<��9����;܃;��8́��������� }`l`l l 6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�P��#�L��# a &A,@�M5�<��9����9�C>��8́��������� }`l`l l 6!P�\Ď��� d ƎPX�0&� 8��# ұ�:�P��# �& )�0HTa UA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a����m� 1!Q�T[>�!Q���V�PHT�#v�@8���>�!���f�PH��#6���L��0T@a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d��D>R���#N�#>b��t,>�#6���L>a OA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�PHT�#v�`HT�#��#(��D�D-Sm��t,>b[=B!���<BHLDH�2�:�P��#�La QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`��D>R���#ұ����<�HLDH�2�a TA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�PHT�#��P8��ܦ�`H��#��#(��D�D-Sm�����#�Hm��t,>b� 1!Q�d�CD��P �2a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD��P �2v�`8�����#ұ����<�HLDH�2���# �H�#a UA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�PHT�#F���L��#ұ��m�����#N�#��#�Hm��t,>b� 1!Q�d�CD���,@C���a XA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD���,@C����=��D>�#���HT�#���=�!�����#,��D�D-��a WA,(@��3��<��9���9��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m�� %����HT�#>R=�HLDH�2զ��H��#>b[=�!Q�����#ұ����=��D>�#6���L��0T@a QA,'@=s�A��:�;�A=��������A���������������@?��T;��=��8�����>�A��A?�������@���T;��=��8���>���A?��������} l@#E�`�;�1�� B`�����| ����@~p#G�`0��#F�`�'K@dƎPX�0v��HT�#>R>"����m� 1!Q�T=�!Q�����#ұ����<BHLDH�2�:�P��#�La WA,(@��3�<��9����;܃;��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m��D>�#��# ұ����F���L��#����<BHLDH�2�:�P��#�L��#N�#>b��t,>�#a WA,(@��3�<��9����9�C>��8́��������� } l l l ��\]@��;؃�����������}@l l ��\^@��;؃������A����} l����#E�`�;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�'MPdƎPX�0��p8����m��D>�#��# ұ����F���L��#����<BHLDH�2�=�!�����# �:� a�b�����a XA,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d��D>R���#N�#>b��t,>�#6���L>a [A,(@��3��<��9���9��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����#R$�@C�=B"������<BHLDH�2����=�D>�#>b�CDV��HT�#>�#���8���>�#���H��#�����#8��D�D-S�#>a QA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0F�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`��D>R���#ұ����<�HLDH�2�a TA,'@=s�A��:�;�A=��������A���������������@���T;��=��8���>���A?��������} l���\]@��;؃�����������}�l l #E�`p;�1�� B`�����| ����@~p#G�`0��#F�`�;J@dƎPX�0v��HT�#�����#$ұ������#4��D�D-�����# �:B1�=B"Q�����>�"���>�#6���L���a WA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD��P �2v�`8�����# �H�#f�pH��#>b� 1!Q��#a ZA,(@��3�<��9����;܃;��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����# N�#>�#f��H��#>�#6���L>�#��0T@d��@,`��D>�#>b�����#>b��t,>b���=�HLDH�2�>�#a XA,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CD���,@C����=��D>�#f�pH��#>b� 1!Q��#���HT�#��a [A,(@��3�<��9����9�C>��8́��������� } l l l ��\^@��;؃������A����} l����@���T;��=��8�����>�A��A?�������#E�`p;2�� B`H��U���Q� �GB4�1MT WA�#G�`0M#F�`�;LPdƎPX�0���HT�#�����# N�#>�#f��H��#>�#6���L>�#��0T@d��4� H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a A,@�& !P�\Î$����L���&@�@ ֎PX�0&� 8��# ұ;�!EB 4��# <� Q��# )a A,@�& !P�\Î$����L���&@�@ ֎PX�0�PHT�#ƎpH�P a�����#ұ���# �:��a A,@�& !P�܈A� �J� �a� �A8 ֎PX�0�0H�b�CDƎP �2��@0��<� Qa A,@�& !P�܈A� �J� �a� �A8 ֎PX�0�PHT�#�PH��#��0T@d��@,`�H a A,@�& !P�\Î$����L���&@�@ ֎PX�0&� 8��# ұ�:�P��#�L��# )�0HTa A,@�& !P�\Î$����L���&@�@ ֎PX�0�PHT�#&�@8��X<B!���:�P��#�L��# )a A,@�O6!P\Ď$�����B$H0�� ֎PX�06� 8��# ұ�:�P��# �& )��@0��X<� Qa A,@�O6!P\Ď$�����B$H0�� ֎PX�0�PHT�#6�@8���<B!���:�P��# )Ǝ�,@C���a #A,@�& !P�\Î�A~� 2b� ��2J�0�#�`�+'d֎PX�0&� 8��# ұ;�!EB 4��#�,�m�CD��@0��<� Q��#�,a A,@�& !P�܈A� ��# �`�+.��!�&��A� ���� ֎PX�0V�`��Է�# ұ�:�P��#�L��# )�0HT`��, a "A,@�& !P�\Î�A~� 2b� ��2 �0�#�`�+'d֎PX�0&� 8��# ұ�=�!�R߶�0T@d��@,`�H��# �<!�a #A,@�O6!P\Ď�A~�L2b� �3K$�hB�����L�A8֎PX�06� 8��# ұ�=�!�R߶�0T@d�H��# �& )�0HT`��, a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0V�PHT�#ƏP8��ܶ�`H��#��#(��D�D-Sm��t,>b�H��#R$�@C�>�!Q���v�@8���<BHLDH�2�:�Pa MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0ƎpH�P a��D>�#Əp8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#6���L>b��D>R�a FA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�PHT�#��`H��#��#(��D�D-Sm��t,>b�H��#$��D�D-��#�Hm�CDƎP �2a HA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ����<�HLDH�2���# �H�#a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�PHT�#ƏP8��ܶ�`H��#��#(��D�D-Sm��t,>b�H��#�Hm� 1!Q�d�����# ;B1�a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CDƎP �2��@0���=��D>�#f�pH��#>b� 1!Q��#���HT�#��a JA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�PHT�#֏P8���Ə`H��#��#(��D�D-Sm��t,>b�H��# �& )��`HT�#��#N�#F���L��0T@a MA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�pHT�#>b�����#Ə�H��#��X=HLDH�2�>b�CD��@0��;� a�b������=�!�����#,��D�D-���>"Q���>a MA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�'O`d֎PX�0F���L��#����:��b�����;�!EB 4��# ���Զ��H��#>b?��D>�#��#$��D�D-��# �=�!���a GA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ~�E�@֎PX�0F���L��#����:��b��D>�#��# ұ����6���L��0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F���q7�P�����`t�@p�d��`@r�G��<�9#E�`�;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�'O`d֎PX�0F���L��#����:��b�����?��D>�#��# ���Զ��H��#>b�<BHLDH�2�:�P��#�L��#ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<wsy��`n v@`�dl@q�ld {p�<�A��#E�`�;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ~�F�@֎PX�0V���L��#����:��b��4� H��#N�#>b�����ܶ��HT�#>R?"����m� 1!Q�d�CDv�pH��#>a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0ƎpH�P a��D>�#Əp8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#6���L>b��D>R�a PA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3�)(Q0�#F�`�;N`d֎PX�0���HT�#�����#R$�@C�=B"������<BHLDH�2����=�D>�#>b�CD��@0��X=B"Q�����?B�D>r����>�"���>�#F���L���a HA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0V�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ����<�HLDH�2���# �H�#a JA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`���$����L� K0��0!P(܈A� ��D �� 0b`T ��E�@֎PX�0���HT�#�����#$ұ������#4��D�D-�����#8��D�D-S�#>b�CDƎP �2��@0��X=B"Q������>�"���>�#a MA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0V�pHT�#>b�����#���H��#��=HLDH�2�>b�CDƎP �2��@0���=��D>�#f�pH��#>b� 1!Q��#���HT�#��a PA,@�a7�P�����`t�@p�d��`@r�G��<�;�vsu��`n v@`@p�`�dl@r�{`�;��<��<#E�`p;�1�� B`��U��A� ���8�@0�hBӄ@�p4;b� ��3S)(Q0�#F�`�;N`d֎PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d��@,`�H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a MA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0f�pHT�#>b�����#Ə�H��#��X=HLDH�2�>b�CD��@0��;� a�b������=�!�����#,��D�D-���>"Q���>a PA,@�Ovsy��`n v@`�dl@q�ld {p�<�A��i7WP�����`tdl�@q�d ��F���#E�`p;2�� B`H��U��A� � �< �� `���U��A� �J�P�"� 0b`T ��F�@֎PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#֏�8���>�#��0T@d�H��# �& )f��HT�#>�#Ə�H��#�����#8��D�D-S�#>a A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������pn0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������pn0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������pn0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������pnPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q�ě:��L��#��T5n���4U͛;BHLDH�2�<!8Me��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������pn`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������pn`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��# �Y<�HLDH�2�&�@NS<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,T� y7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#E�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#E�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#E�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#E�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a KA,D� �7�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��# �Y<�HLDH�2�&�@NS<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a .A,� �7b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� �7h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� �7b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,D� �7h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� �7b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#E�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#E�`p3��A8��0<Sa .A,4� �7b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a AA,�� 8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,T� y7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a OA,� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �Y<�!8MU��@NS�<B���>�HD4�<B���>�HD4a OA,D� �7W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#��T���L��# �<�HLDH�2�6�`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� �7�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,D� �7�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� �7�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#E�`P3��A8��0<Sa A,��\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#E�`p3��A8��0<Sa 2A,4� �7�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� 8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2�&�������4MF�������4M���L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,T� y7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�;�0�� Bpp0�p�lC �掐�L����L��# �<!8Me��_�O�H#�d���4UM�<B���>�HD4a OA,� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d���4�m[>B���>�HD4�=B���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�``>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�>�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�>�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#E�`�p�A8��0<Sd���4a A,��\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#E�`�.��A8��0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#E�`B�@��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#E�`@.��A8��0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#E�`�>�0�� Bpp0�p�lC �掐�L����L��# �<!8Me���4UM�<B���>�HD4�<B���>�HD4a OA,D� �7W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#E�`?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!v�������4M����L��#(��D�D-�n� 1!Q���<�!8MU㦎0<Sd���4U͛;BHLDH�2�=B���>�HD4�<!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� �7�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#E�`0?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� �7�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#E�`P?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� �7�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#E�`p?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,D� �7�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#E�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� �7�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,d�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#E�`P3��A8��0<Sa A,��\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#E�`p3��A8��0<Sa 2A,4� �7�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#E�`�?�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a EA,�� 8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#E�`B�0�� B0�0� �0�p�lC@� !�6ĐA8����L��# �Y<�HLDH�2����L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#E�`@B�0�� B0�P�lC �掐�L����L��# �<B���>�HD4Y<B���>�HD4a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a A,t�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #G�`�B�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #I�`�B�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�BC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�B�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#G�`CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�` C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#G�`@CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#F�``B`8��0<Sd���4��#�Pa A,t�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#F�``6� `8��0<Sd�E,a A,��\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#F�`�6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#F�` 6� `8��0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#G�``C�!�0U�B~!~���d���4n���4��# �Y;�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#I�`�C�B B��@��0U�B~!����d�S,���>qM L&�PNS�6�PNS��@NS=�!8MUӦ�0<Sd�E,a�S,���>qM L�0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #I�`�C�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#G�`�CC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #I�`F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#G�` FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,t�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#F�``:� `8��0<Sd�E,a A,��\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#F�`�:� `8��0<Sd�E,a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#G�`@FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a ;A,t�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #I�``F�A B��@�0U�B~!����d��3E��PT�B֎0U�B~!>���d�S,���>qM L��0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#G�`�FC! ��0<Sd�S,���>qM L�0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��� ��#�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#G�`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#G�`01��� ��#�c��t �q }2"�\�3�U<�^�3��>�`�3�I�b�48FM�d�4XVX�f�5x�Z�h�5��]�j�5�Fi�l�6�Vl�n�6��n�p�6�y�r�78G}�t�7XW��v�8x���x�8����z�8�G��|�9�W��~�9�G����:P����:8�����:X�����;x@����;�P����;�@Ƀ��<��̃��=�ۃ��>8pꃔ�?X`����?x�����@�����A�����A�@(���B�@9���D�I���D8�X���EX�_���Fxo���G��~���H������I�����J�𫄰�J�����L80؄��Mh0߄��M��脼�N�0���N(����Nh0���N�����N�0����O�����OH0����O������O�@����O�����PH` ���P� ���P�� ���P ���PH����Q� ���Q�����Q(0���QH(����Q�(@���R�(�(���R)P*���RH)�+���R�)P-���R�)�.���R*`8���SH*�9���S�*�;���S�*@=���S+�>���SH+@H���T�+�I���T�+@K���T,�L���TH,�N���T�,X���U�,�Y���U-0[���UH-�\���U�-`^���U�-�_���V.pi���VH.�j���V�.pl���V�.�m���V/�o���W(/py���Wh/�}���X�/p����X�/����X�/�����X�/P����Y(80����YH8К���Y�8P����Z�8Ы���Z�8p����Z�8����Z9�����[89�����[x9p����[�9�����[�9pȅ��\:Pʅ��\X:0̅��\�:΅��\�:�υ��];�م��]X;�ۅ��]�;�݅��]�;�߅��^<����^X<p���_�<�����_�=P ���`8>0���a�>)���bx?08���c�?�9���c�?`;���cH@=���cHH ?���d�HI���d�H�J���dI�L���dHI�N���d�I�X���e�I`Z���eJ@\���eHJ ^���exJ h���f�J@j���f�J@l���fK n���fHKx���g�K�y���g�K�{���gL�}���gHL����h�L`����h�L@����hM ����hHM����h�M�����i�M�����iN�����iHN�����i�N�����j�Nઆ��jOଆ��jHO�����j�O�����k�O�����kX`����kHX@����k�X Ȇ��l�Xʆ��lY�ˆ��lHY�͆��l�Y�φ��m�Y�ن��mZPۆ��mHZ�݆��m�Z�߆��n�Z醮�n�Z@ꆰ�n[`놲�n8[�솴�nX[�톶�n�[`�o�[�����o\`����o(\�����oH\�����ph\� ���p�\����q�\����r�\�*���r�\�/���s]p<���t(]�O���uH]�i���vh]�|���x�]�����y�]�����{�]�����|�]ه��}^����(^����ɀH^`��x^������^@)�����^�,����^�8����_�<���8_�I���X_0[����x_Pl�����_~�����_����ʉ�_0�����_�����h�����8hp�����Xh����׏xh� ��Đ�h� �����hp�����h�����h�)���ip9��ړ8i�H��͔Xi�O����xi@[��Ε�i�^�����i�n�����i�}�����i������j������8jP�����Xj�����xj������j`�����j�������j�������j`�����k������8k����ȟXk0�����xk� ��ˠ�k���ȡ�k�(�����k�/�����k�<���l@I��פ8lpX����Xl�[��٥xlP_�����l�j��Ŧ�l�o��ŧ�lP�����l������m������8m �����Xmp�����xmp������m������m����ݭ�m�������m0�����n`���ѯ8n������Xn@ ����xn� �����np�����n@*����np9��ڳ�n�H����oL��۴8o`O����Xo`_����xo�n�����o�}�����op���¸�o ������oP�����x�����8x�����Xx������xx���¼�x`������x������x�������x����ǿyP�����8y�����Xy�����xy0.�����yP;�����ypH�����y X�����y�[����z�_����8z�k����Xz�x����xz0������z�������z�������zp������z �����{������8{P�����X{�����x{ ������{@������{� �����{� �����{����|����8|0+����X|p:����x| I�����|�O�����|�[�����|�_�����|`o����}~����8}������X}������x}�������}0������}0������}P������}P�����~p�����8~������X~`�����x~������~ ������~ �����~������~P)����8����8�<����X�I����xpX�����p\������h������l������y�����������8�������X�P�����x�`�������`������������؈��������@������ �����8������X�������x���������� �����������؉�������0,������:����8��I����X��M����x��Y������ i�������o����؊�~������`������@�����8������X������] ���.threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_62_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z6__shfliii_Z6__shfljii_Z9__shfl_upiji_Z9__shfl_upjji_Z11__shfl_downiji_Z11__shfl_downjji_Z10__shfl_xoriii_Z10__shfl_xorjii_Z6__shflfii_Z9__shfl_upfji_Z11__shfl_downfji_Z10__shfl_xorfii_Z6__shflxii_Z6__shflyii_Z9__shfl_upxji_Z9__shfl_upyji_Z11__shfl_downxji_Z11__shfl_downyji_Z10__shfl_xorxii_Z10__shfl_xoryii_Z6__shfldii_Z9__shfl_updji_Z11__shfl_downdji_Z10__shfl_xordii_Z6__shfllii_Z6__shflmii_Z9__shfl_uplji_Z9__shfl_upmji_Z11__shfl_downlji_Z11__shfl_downmji_Z10__shfl_xorlii_Z10__shfl_xormii_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! �y !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L  Q&ӄAB� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��E䔁�ȡ��TT����*�PRE�Z� W5e�(�S�AU H�b<QU�_�Ȫ"�aU 0H�R�9@\��ȫ"PP�Ew��h,*�e�EfQE�-J��(�k[�Hq��"K�`I\$�R�P袺H�"Hs�Eh �h/��t�E~Q E0 �)B#�a�I21�#R�@Jb�US�j�Ɗ�KB�X��"�a�0�dD%S�d,���"��iV�+0�8+�P@��� �� ��p��he���2��2\�VdZ�X�B� W���V�+ⲄX+�t�B��ኻ�!��p�^h�le��/:��2\X d[��­ W� �V�+#�x+��UC��ኄ~!��p�P�pe�b�a��2\aY2d\�� B� `)W���+�C�P��+�S@� P��+�S@�~Q��+��iW�;ĺ��n ` `� �a�"��P� ���`�yE �J��E����E��;��Z�!��;�0�[D_ȋ��+B{t~F0��"�w�W������^_�_��,�|�рE �0*��%FA?�(A#��K��4�/���K��49�!��H�2\QDa!�( ��b\�aX�+ֺ�ҰW�u�w�A⊸�<,�t����.  q�^@$㊾��B\�w�Ÿb�;��R�W�b1�H �\,��`�X�+&����WX��/��B4���!�l,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �!��0;��q � �e�p�c0 � ��`��q�a0�($r�8B1�`��`� @���\0�Q  ��L.)��'����v@~� �a��@;����8�` �|�q�b0�(�r�8R1�`$v�`� @�ڿ\0�U  ��b� ����@;�� r�8Z1�`d�A.�+�~5��x�` ���`� @������v@��r�c0���Y@�r  ��x@ �a��@;�qd9�1�`T��+�,�FPp��` �P, �`� @��I�����v@�)��q�b0�hOW0�[  ���� Ɓ��@;��\�8r1�`TƂ+�.��Yp���` �Ph �`� @�zq�����v@�.��q�b0�h�W0�_  ��� ���@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��_+0D*Y��H4K@�@��l �0"�-�C��%"v`�d���$ �З���!��S=�0Dja��H=LD�@�ɍ��0"�1!�C�X&��`�4�Ą$ �왘V�!RJ�K�0D�i�� �HjM<4@�)� �&"�6�C��&�� `�d�D� ����!҉RY0D�q�A �HhN@k@� � �-"�:�C�\'"� `���t �������!��S_0D { �HqOD�@�I� �4"�>1�C��'�� `��� �\��f��!��m0D�â� �H�XX�@�I �7"�cq�C��,"� `���� �䲘���!Ri�{0D����H�Y �@��= )>"�g�C$-�� `��� �ƴ`���!қ�|0D�ӂ��H�Z �@�)V g>"�j��C�u-�� `���3 �J�@���!R��|0D��"��Hl[L�@��o�h>"�n1�C��-�� `��4 �B�p���!� �|0D��™�Hm\@�@��� g>"�r�C�].�� `���E5 �F�����!�M�|0DZ납�Hw]0�@�i� �>"�v��C��.�� `��ޅs ��p���!R��}0D��b��H>^(�@� ͋e?"�y��C$>/�� `�tꅲ@ �b�`���!R�I~0D2����H�^ �@�I� f?"�|��C��/�� `����@ ���H���!R��~0D��"��Hy_ �@�)�$?"�~��C$�/�� `���ű@ �ĿH���!���~0D�����H�_�@�����?"��q�C�4�� `�$��" �r� B��!R�0D*C��Hmh�@�I��?"��a�C�P4�� `���F�@ �\�@F��!�-Ĉ0D�E)�H�h(%@�� �D"ѣ��C�~4�� `�D��@ �P�H���!RL�0D�I#�H`i#@��, EE"��Q�C$�4�� `����@ ���XX��!�j�0D�MC)�H�i%@� < �?"��Q�C��4�� `�D��@ ���@���!��0D*Q��H-j�@�IF��?"�A�C�5�� `�T�F�@ ���@���!���0D�SC�H�j#@��T��?"��A�C$Y5�� `���F�@ �~�@���!ҹ�0DbW#��H�j�@�i_��D"��q�C��5 `����"@ ���@���!R��0Dr[#��Hwk�@��o �?"��Q�C$�5�� `�4���@ �r�H���!���0DB_#��H�k�@��~��?"��a�C$6� `�Æ1"@ �l�@���!��0Dc���Hjl�@�ɍ �?"ٱQ�C�=6�� `�T���@ �X�P���!�-�0D�e��H�l$#@�i� gD"����C��6� `��ӆ2"@ ���h`��!\�0D�k#��H�m�@�ɴ EF"��q�C��6 `�$�"#@ ���H���!�|�0D�o��H!n�@��čDF"��a�C�7 `����!#@ ���h���!Ҝ�0D�s#�H�n#@�iՍ�F"ѺA�C$\7� `��F1"@ ���HF��!һň0D�w#��H�n�@�i��?"��a�C$�7�� `����@ ���H���!���0D�{#��Hyo�@��� �F"����C$�7 `�d��a#@ ���0���!���0D����H�o �@����G"��1�C�<�� `����@ �d�0���!�0D�����Hbx 8@�� �?"����C�R<�� `�t���@ ���P���!�;�0D��c��H!y �@�)%��?"���C��<�� `���@ ���H���!�_�0D*ͣ��H�y <@�I7��G"��A�C��<�� `�4� ���@���!҈�0DB��H0z`@��FL"�聀 C$3=0 `��& ���@���!���0D2��H�z <@��V�G�"���C$q= `���@ ���@���!��H|0D���H&{`@�ieL"��a� C��=0 `��& ���@���!R��0D���H�{ `@�)udD"���C��= `�Ի�# ���@t��!R���0D�߃ �H(|<b@��FL�"��� C$9>1 `��G$& �d�h���!�/��0D�� �H�|Dd@�ɥ��L�"��� C$�>1 `�d��#& �J�`���!Rl��0D� �H�}<b@�i�FL�"��� C$?1 `�$��#& ���`���!R���0Db�� �H�~<b@���FL�"��� C��?1 `���#& �t�X���!R���0D��� �H�<b@���FL�"��- ���` �H�@ C�D���!� "��0DC�1 �Hp�Df@�)��L�"�"� C$pD4 `��ȡ&0 ��)���!�>"���0D I�` �H&�`n@��'N�"�%�� C$�D8 `�d�'@ ������!�m" �0D�M$� �H�$<@�)>��G�"�'�� C$E `���H�#@ ��Ix��!R�" �0D�S��H��$<@��V��G�"�+��C�tE `�$��G' �`y���!��"�~0Dr[�� �H}�<�@��u��N"�/�C��E�� `����@ �v����!�#��0D:e�� �H��8x@�i�O�"�3�� C�F<; `���ȃ'@ ��y���!�^#�0DRm�� �H��pz@����O�"�8�� C�G> `����'@ ������!Ҫ#�0D�u�� �H�<|@� ߑ�O�"�<�� C��G>? `�D�� C$�G2 `�4�C&@ ��y���!� &��0D���1�Hk�8f@�)��L"�bҘ C�ZL3 `�4� c&@ ��1y���!�?&��0DZ��1�H:�8f@� -��L"�e� C��L3 `�D��c&@ ��3q���!|&��0D���1�H,�8f@�IG�gT"�iŒ C�:M,1 `����$&@ �z5����!�&��0D:���H=�Hb@��m�KL"�n2� C��M,3 `��� e&@ �F8����!�'��0Dz��"�H��Hd@�間�L"�s2� C��N�Q `�tӉ4*@ ��:�F��!h'Ө0D����H�\b@� �KL"�xr� C�6O.1 `�D��$&@ �n=����!һ'��0D���H:�Lb@���LL"�~B� C��O.3 `��Ie&@ �JP����!R*��0D�C�"�H��Ld@���L"գB� C��T,1 `����$&@ ��R����!j*��0D�M�2�H�Pf@��D��L"�R� C�8U,1 `�t��$&@ �rU����!�*��0DY�2�H9�Pf@��m��L"��R� C��U,1 `����$&@ �BX����!+��0DZc�2�H��Pf@�����L"��R� C��V,1 `�tӊ$&@ ��Z����!h+��0D�m�2�H�Pf@�����L"ѸR� C�4W,1 `���$&@ �b]����!�+��0D�w��H1�Hb@�i�KL"�2� C��W���!�+�@���l `��˴0D ��Z"��"-@ �Tq��H�L C�z\.4 `�Ē �&@ ��r����!^.�0Dj���H�Hb@��>�KL"��2� C�],3 `�T��d&@ �Pu����!ү.��0D����H)�Hb@�ig�KL"��2� C��],3 `��� e&@ ��w����!� /��0D���Hp�Db@�)�KL"��"� C�t^*3 `��ϋd&@ �`z����!�Y/��0D���H��Db@��KL"��"� C�_*3 `����d&@ ��|����!R�/��0D����H�Hb@�)�KL"��2� C��_,3 `���d&@ �h����!��/��0D����H5�Hb@�� �KL"�!3� C�Xd,3 `�t� e&@ �������!�L2��0D:KF)�Hq� l@�)/�T "�&3� C$�d(5�`�d�L�&@ �N����!��2�0DRS&��H{�d�@��V�("�+��  C$e�8 `�� v*@4 �Җy���!�2ة�0D�]��H��t�@����/U"�1� C$Qf� U"�3� C��f�Z `���LW  ����j��!�n3\-0D�o� R��!�3dP  �@�Y���!Ҫ3�|�0D�ufZ�H��X���)��U"�<�� C��g�U `�D�̵*@< �v�����!��3�0D���H.�@�@���)>"�aI �D��d��!R-6�0Db�f��H��X�@��&KV"�e�� C��l0Y `����%+ �䳹d��!R�6��0D���� �Hj�8�@� O�V"�j�� C$sm.[ `�ԯͤ+ �`��t��!��6��0D�����H��`�@��|LW"�os� C$n.] `�����+ �@��x��!�-7�0Dr����H%�L�@� ��IW"�uc� C��n,] `�t� �+ �޻�t��!҉7��0D�����Hu�,�@� ԛ�W"�z�� C$[op `���2.D �ؽY �H��,�@�I��\"�|� C$�o"v `�4�M�. �H�y���!��7O�0D����H��,���)�e\�"���@ �n�Y|��!�:Ѿ0D�C'��H��H!@���d"��� C$|t � `�����2 �|�Y^��!RZ:K�0D�K'��H��D7@��6Ig"���� C$�t_ `��.D �X�a���!�:̸0D"S��"���� C$>u"s `�ԪN�. �|Ց���!�:һ0DY��H2�@�@�Il� _"ݭÀ C��u�q@`���0D�]���H��H�@�)�_"��3� C$v&� `��Nt2 �DىT��!�,;W�0DRg�y�H��01@�I��f"Ѵ#� C$�v&� `����+ �J�a|��!Rl; �0D�m�"�H��0�@��� `���+ �Z܉���!��;Q�0DzsGb�H��H�@�i�H^"��� C�yw*| `���.H �h�a� �!�; @����W"�#� C$�w$ `����2 ��ߙH��!�>��0D��'R�Hd�\-@�i�e"���� C�Y|$� `�T��t3 ���t��!�J>��0D�ɇ��Hb�0�@��-\�"��Ì C$�|��!�l>��0D��'2�H��D�@� D�]"��#� C$2} y `�D�T/ �H�����!R�> � 0D*ׇ$�H��0C�~}_ `�����/ �v�����!R�>S�0D�g"�H��D'@��|�He"��s� C$~�� `���3 ����h��!�?��0DB�g��H��0�@���W"��À C�~p `���3.D �n�a �Hc�0�@�魟�\"��� C��~$v `�4ޏ�. �������!R�?P�0D����Hj�0�����f\�"���@ �\�a|��!��?Ҿ0Db�G��H��L!@�)柉d"��� C��"� `�d���2 �z�a^��!R�?L�0D��G��H'I7@�)�Ig"�!�� C$<�_ `�D�.D �`b���!/B̸0DBG��"�#�� C$��"s `��P�. ������!]Bһ0D2M��H� A�@��<� _"�'Ā C���q@`�4�0D�Q���Hk I�@��O!�_"�*4� C$q�&� `�T�Pt2 �L�T��!��BW�0Dr[�y�Hz 11@��t!�f"�.$� C$��&� `�Կ�3 �Rbx��!R C��00D c��&�Hm 1`��)�!Fl"�2�� C�X�$� `�4ΐd6 ������!JC��0D�i(b�Hl En@���! n"�6�� C�߆��`���#6 ��bx��!҈C��0D�qh��HiQv@���! o"�:$� C�q�$� `�T��7 �Zb@��!R�C��0D*{h"�HxM�@�i�! u"�>�� C���� `�t��3L �F0b|� �!� F �00D����Hg1<@�i#�l"�b$� C�[�&� `���Ѥ6 ��1����!�KF��0D��Ȃ�Hu1>�)4#l�"�fĈ C�܌� `�T��$7 ��3����!ҊF��0D�ш��HsIz@��T#�o"�j�� C�w�� `���#: �N6�H��!��F��0DjۈB�H�1<@��u#�g"�n�� C���``��6L ��7b���!R G �0D��H"�HgIf@�)�� m"�r4� C�_�"� `��Q�6 �B:����!�MG��@0D�(�Ho1b@�i�#�g"�v4� C$ݎ&� `���e7 �B<����!R�G��0D:�H��Hya~@�)�#t"�zĈC�t�&� `����d: �^>�P��!��G �0Dz����H{1>����#�g�"�~Ā C�ߏ� `����3 ��?����!R J��0D�AiB�Hn(Mj@�)��m"ɢ� C�q�,� `����3P �JRb� �!RLJ��0D�I���Hi)Mr@��/��n"��D� C��(� `�t���7 �RT����!ҎJ��0D�S��H*1�@�iU��t"��4�C�x�(� `�T��5 �vV����!��J�|0DB]��H�+Y�@��~%.>��"Űd�C�3�,� `����:@@ �rY�T��!�;K��0D*i�R�H;-Y�@�)��'?�"��d�C$ۖ(< `���; �D\�d�!��K�0D�s ��H�.q��I�%�v"����C$��0� `�$��; �T_�t��!��KЪ0D� �*�H"85�@����%vY $2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�Bb�C �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �alignF&0��a0��a0�p�0���0�0�0��a0�`�0��0�0�0���0��a0���0���0���0�0�0��a0�`�0���0� �0���0���0�P�0���0�@"1�p#1�&1�0'1��)1�+1��x1��a0��y1��~1��1���1���1���1���1�p.�5��.�5��.�5�/�5�0/�5�`/�5��/�5��/�5��/�5� 2�5�P2 6��2!6��2"6��2#6�P3&6��3'6��3(6�p.06��.16��.26�/36�0/46�`/56��/66��/;6��/<6� 2=6�P2>6��2?6��2`6��2a6�P3d6��3e6��3f6�p.n6��.o6��.p6�/q6�0/r6�`/s6��/t6��/y6��/z6� 2{6�P2|6��2}6��2~6��26�P3�6��3�6��3�6�p.�6��.�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�P3�6��3�6��3�6�p.�6��.�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�P3�6��3�6��3 7�p.(7��.)7��.*7�/+7�0/,7�`/-7��/.7��/37��/47� 257�P267��277��287��297�P3<7��3=7��3>7�P6f7��a0�p6g7��a0��6h7��6i7��a0��6j7��6k7��a0�7l7�07q7�P7r7�p7s7��7t7��7u7��7v7��7w7�P:z7�p:{7��:|7�P6�7�p6�7��6�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�P:�7�p:�7��:�7�P6�7�p6�7��6�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�P:�7�p:�7��:�7�P6 � �M#i#���ڌ`0��6$� �M #qc���ܬ`0�P7,� �M #y���޼`0��70� �M #�C�����`0��:6� � 3 E �0�1À� C3 Jp�0,3��� �03 O��0@A4� � �D3 T�0TA4�`� �03 X�0dA4à� �D3 \�0tA4��� ��� C`0� �0�A3 d�� C`0�`�0�A3 h3 i3 j3 k03 l03 mD3 nD3 o3 p3 q3 r03 s03 tD3 uD3 v03 wD3 xD3 y3 z3 {3 |03 }03 ~D3 D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 03 !03 "D3 #D3 $3 %3 &3 '03 (03 )D3 *D3 +03 ,D3 -D3 .�� L11� AL�0�D@3 5�� �M71À�M�0�D�3 :�� �N11��M�0�D@3 >�� �O71�M�0�Ep3 b�� �X/1�@AL�0�E3 f�� �Y41À�M�0�Ep3 j�� �Z11��AL�0�E@3 n�� �[71��M�0�E@3 r�� �\71�@�K�0�E3 v�� �]41ÀM�0�Ep3 z�� �^/1��AL�0�E3 ~�� �_41��M�0�Fp3 ��� �h71�@�M�0�F�3 ��� �i11ÀM�0�F@3 ��� �j71���K�0�F3 ��� �k41�M�0�Fp3 ��� �l41�@�M�0�Fp�3������������������������������������������������������������������������������������������������������������������'b b b b b b b b b b b b�n�n�n�n�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�2��t������\�������F j#!7;�6�07�7�0��7��QT�6n7rC7v�7z�7~<�C<ƃ<��<�=�C=փ=��=�>�C>�>��>�?�C?��?��?�DBDDF�DJ�DNERDEV�EZ�E^FbDFf�Fj�FnGrDGv�Gz�G~L�DLƄL��L�M�DMքM��M�N�DN�N��N�O�DO��O��O�TBETF�TJ�TNUREUV�UZ�U^VbEVf�Vj�VnWrEWv�Wz�W~\�E\ƅ\��\�]�E]օ]��]�^�E^�^��^�_�E_��_��_�dBFdF�dJ�dNeRFeV�eZ�e^fbFff�fj�fngrFgv�gz�g~� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �dv�\��������4Ma A,$� � �dv�\��������4Ma A,T� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,D� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,� � ��6C�A8 v�\��`��������4M��������4Ma A,D� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,t� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � �dv�\��������4Ma A,4� � �dv�\��������4Ma A,d� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,D� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,t� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,� � ��6C�A8 v�\��`��������4M��������4Ma A,4� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,d� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � �dv�\��������4Ma A,4� � ��6C�A8 v�\��`��������4M��������4Ma A,d� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,$� � ��6C�A8 v�\��`��������4M��������4Ma A,T� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,T� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma Ĉ�� �� �pC`f0��,�0K0 TD�B�@��0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1��`NSٽ&$@#����� & ұX;� ��#$@#������#��Twm���4Ս?� 0��#�,6o�� &�`NS�&��T8m� ��;4n���4�m���4Un���4o���4��#��T5n���4U��9B:BX<!�n���<wn���4�M�=�!8Me�V�@��>�!8Me�a Ĉ�� �G� �pC`f0��,�0K0 TD�B�@��0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �Q~Bp�p r2b` �~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1��`NSٽ&$@#����� & ұX;� ��#$@#������#��Twm���4Ս?� 0��#�,6o�� &�`NS�&��T8m� ��;4n���4�m���4Un���4o���4��#��T5n���4U��9B:BX<!�n���<wn���4�M�=�!8Me�V�@��>�!8Me�a ���� �G� ˆ�� ć�B�@v�������P�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|ȟ����A|П\p�@�@T� WC��5��`NSٽ& ұX;� ��#��T7n���4խ�?�!8Mu�0�`� ��4��a��D��@̀�;B!8Me<B!8M�[=B!Q}�<B!8M�;!8Me���4U]�=�!8MU㶏`��ܷ &��Txo� ��4U��9B:BX:B X<!�n��, n[`�!˂�6�`NS��#@3Դ�#��T�m���4��[>!�a ���� �Gz ˆ�� ćzB�@v�������`�����#�,>Ra ���� �z A�@v�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|ȟ�@��A|П\p�@�@T� WC��5Ə`NSټ& ұX;� ��#��T7m���4�m`�!8Mu�`��ػ�# @3�`�!8M��6�`NS�&Nd� ��4��?�!�r���@̀�;B!8Me�<B!8M�<B!8M�;!8Me���4U]�=�!8MU�v�`NSպ�#��T5o��tD�m�`�A`��`��tD�&�,�m�� 5m���4�}[>!�a ���� ć� ˆ�� ���B�@v�������P�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|ğ\p�@�@T� WC��5��`NSٽ�#�,v�`NSٶ& ұX;� ��#��T7n���4խ�?�!8Mu�0�`� ��4��a��D�PNS�&�`NS��#��T��#@3�V�PHGT�Ǝ@NS�<B!8M�=�!8MU�f�`NSո &��T�m� ��4U��9B:BX:B X<!�n��,�}�?�!˂��`����#@3Դ�#��T6a ���� ��~ ˆ�� �B�@v�������`�����#�,>Ra ���� ć~ A�@v�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|ğ\p�@�@T� WC��5Ə`NSټ& ұX;� ��#��T7m���4�m`�!8Mu�`��ػ�# @3�`�!8M��6�`NS�&��T�n��,˭�;4n���4�m���4Un���4o� �Y=B!Q};!8Me���4U]�=�!8MU�v�`NSպ�#��T5o�`�A`��`��tD�&�,�m�� 5m���4�}[>!�a Ĉ�� �G� ˆ�� ć��pC�f0��,�0K0 TD B�@ ֎@N3;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|̟����A|ԟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������Ƙ0H�b��tDf��������Ǝ0�`���4�m���4Un���4o��,�}[;!8Me���4U]�=�!8MU�v����`��ඥ#� &�,8o�� 5m���4�m�>!�b���4���>�!8Me�֏`NSݸ�#��T�n� ��<��`NSݼ!&��&��T8n� ��`�!8M���@̀�=B!Q}a�!8M��v�`NS��#����`NS�-&��T� a Ĉ�� ć� ˆ�� ����pC�f0��,�0K0 TD B�@ ֎@N3;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|ȟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������Ƙ0H�b��tDf��������Ǝ0�`���4�m���4Un���4o��,�}[;!8Me���4U]�=�!8MU�v����`��ඥ#� &�,8o�� 5m���4�m�>!�b���4���>�!8Me�֏`NSݸ�#��T�n� ��<��`NSݼ!&��&��T8n� ��`�!8M���@̀�=B!Q}a�!8M��v�`NS��#����`NS�-&��T� a � ��A|�^ dv�������0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|��\p\@�@T WC��<Ə`NSټ%& ұX;� ��#��T�m���4Ս`�!8Mu�&�`NSݼ &��Two�� F�`NS�&��T�n� ��;4n���4�m���4Un���4o��tD�m���4��#��Tum���4U�b�!8M��v�`NS崝#��#��#��#��V�`����# �0X`B ý�<B4CM�=�!8Meۆ�`NSٸ�#��Tvn���4��[?!�a A ��A|�W dv�������0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �� �w�E�9� \p\@�@��A|��\p\@�@T WC��<��`NSټ%& ұX;� �&��T7m� ��4�m�`�!8Mu�F�`NSݹ�# @3�a�!8M��v�`NS�!&��T8n� ��;4n���4�m� �,��<B!8M��<B!8M�[=B!Q};!8Me���4U]�=�!8MU�v�`NSպ�#��T5o���4U��9B:BX:B X<!�n�0 �P�p�6�P�PӶ�`NSٴ�#��T�m��,��#��T�a � ��A|�^ dv�������0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|ԟ\p\@�@T WC��<Ə`NSټ%& ұX;� ��#��T�m���4Ս`�!8Mu�&�`NSݼ &��Two�� F�`NS�&��T�n� ��;4n���4�m���4Un���4o��tD�m���4��#��Tum���4U�b�!8M��v�`NS崝#��#��#��#��V�`����# �0X`B ý�<B4CM�=�!8Meۆ�`NSٸ�#��Tvn���4��[?!�a A ��A|�W dv�������0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �G� �w�E�9� \p\@�@��A|ԟ\p\@�@T WC��<��`NSټ%& ұX;� �&��T7m� ��4�m�`�!8Mu�F�`NSݹ�# @3�a�!8M��v�`NS�!&��T8n� ��;4n���4�m���4Un���4o��tD�m� �,��;!8Me���4U]�=�!8MU�v�`NSպ�#��T5o���4U��9B:BX:B X<!�n�0 �P�p�6�P�PӶ�`NSٴ�#��T�m��,��#��T�a � ��A|�^ 7x`� �� ��@@� d Ǝ0�c�`�A`��`�0 ֎@N3�:!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H֏`NSټ5&$@#�����A& ұ�;� �)&$@#������#��T�m� ��4Ս[`�!8Mu떘0�c� ��4��a�!8Mu�ƘP̓�Ǝ0�`� ��4^�a�!8M���@̀�;B!8Me�=B!Q}[<B!8M�[;!8Me���4U]�=�!8MU�6�PNS�`NSἝ#��#��#��#��f�`���-&��Tym� ��4U��>� �=&��Tyo� 0 �n�� 5m� �>�!8Meۖ�`NSٸ�#��Tvn���4���?!�a � ��A|�^ 7x`� �� ��@@� d Ǝ0�c�`�A`��`�0 ֎@N3�:!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|؟\p\� 7��� ������ 7��� ��@ #@�@T� WC��H֏`NSټ5&$@#�����A& ұ�;� �)&$@#������#��T�m� ��4Ս[`�!8Mu떘0�c� ��4��a�!8Mu�ƘP̓�Ǝ0�`� ��4^�a�!8M���@̀�;B!8Me[<B!8M��<B!8Mś=B!Q}[;!8Me���4U]�=�!8MU㶘`NS�!&��T8o�`�A`��`� ��4Uޛ<!�n� �, ��c�!8M�憐0�`� 0 �n�� 5m� �>�!8Meۖ�`NSٸ�#��Tvn���4���?!�a ���� �G� �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��@��a ���� �Gz �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��`���a ���� ć� �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��@��a ���� ��~ �p1�����Q�D8 ��0�c�`�A`���4�n����#��T��`���a bA,@��Uz�P��w@!�^p��x�pr2b` �~Bp�p r2b` ��~Bp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<��`NSٽ &��!& ұ�;� ��#��Twm���4�}`�!8Mu��0�c� ��4���?�!8Mu㦏`��ؼ�# @3�`�!8M��F�`NS�&��T�m� �<4n���4�m���4Un���4o���4��#OD ��=�!8MU�V�`NSպ&��T8o�`�A`��ÿ8&�@HG��a�!8M��v�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �~Bp�p q1b` ��~Bp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<֏`NSٽ!& ұ�;� ��#��T7m� ��4�][`�!8Mu�&�`NSݺ�# �a�!8Mu�`��ظ&��Two�� f�`NS�&��T8n� �<4n���4�m���4Un���4o���4��#��T5m���4Um[:��D����#��T�n���4U��9B:B�:��D��/��#��6�P�s`NSٴ�#�,��`NSٹ�#��T�a bA,@��Uz�P��w@!�^p��x�pr2b` �a~Bp�p r2b` �~Bp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<��`NSٽ &��!& ұ�;� ��#��Twm���4�}`�!8Mu��0�c� ��4���?�!8Mu㦏`��ؼ�# @3�`�!8M��F�`NS�&��T�m� �<4n���4�m���4Un���4o���4��#OD ��=�!8MU�V�`NSպ&��T8o�`�A`��ÿ8&�@HG��a�!8M��v�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �a~Bp�p q1b` �~Bp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<֏`NSٽ!& ұ�;� ��#��T7m� ��4�][`�!8Mu�&�`NSݺ�# �a�!8Mu�`��ظ&��Two�� f�`NS�&��T8n� �<4n���4�m���4Un���4o���4��#��T5m���4Um[:��D����#��T�n���4U��9B:B�:��D��/��#��6�P�s`NSٴ�#�,��`NSٹ�#��T�a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v���@��a ��A� ����v� ��#�,a ��A� ���v� ��#�,a ��A� ����v� ��#�,a ��A� ���v� ��#�,a ��A� ����v� ��#�,a ��A� �G��v� ��#�,a ��A� ����v� ��#�,a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� ����v� ��#�,a ��A� �G��v� ��#�,a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� �ǿ�v� ��#�,a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ��A� �G��v� ��#�,a ��A� �ǽ�v� ��#�,a ��A� �G��v� ��#�,a ��A� �Ǽ�v� ��#�,a ��A� �G��v� ��#�,a ��A� �ǻ�v� ��#�,a ��A� �G��v� ��#�,a ���� �� A�@v�����@��a ��A� �G��v� ��#�,a ��A� �ǹ�v� ��#�,a ��A� �G��v���@��a ��A� �Ǹ�v���@��a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ��A� �G��v���@��a ��A� �Ǯ�v���@��a ��A� �G��v���@��a ��A� �ǭ�v���@��a ��A� �G��v���@��a ��A� �Ǭ�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ��A� �G��v���@��a ��A� �Ǫ�v���@��a ��A� �G��v���@��a ��A� �ǩ�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ���� �ȟ B�A8v�����0@�c��, a ��A� �Ǟ�v���@��a ��A� �H��v���@��a ��A� �ȝ�v���@��a ��A� �G��v���@��a ��A� �ǜ�v���@��a ��A� �H��v���@��a ��A� �ț�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ���� �Ț B�A8v�������@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� �ǘ�v���@��a ��A� �G��v���@��a ��A� �Ǐ�v���@��a ��A� �G��v���@��a ��A� �ǎ�v���@��a ���� �Ȏ B��@v���@H�Y:!<Sa ���� �H� B��@v���@H�Y:!<Sa ��A� �G��v���@��a ��A� �nj�v���@��a ���� ��� A�@��v�4��@��a ��A� �Nj�v���@��a ��A� �G��v���@��a ���� �� A�@��v�4��@��a ��A� �G��v���@��a ��A� �lj�v���@��a ��A� �G��v���@��a ��A� �Lj�v���@��a ��A� �G��v���@��a ��A� ���v���@��a ��A� �G�v���@��a ������ �H A�@v�����@NS�:!�a � ����� �HB�@v�����@NS�:!�a ���� ć~ A�@v�����@��a ���� ć~ A�@v�����@��a "D,��� �����A|�\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa ���� ��} A�@v�����@��a ���� � } A�@v�����@��a ���� � } A�@v�����@��a ���� � } A�@v�����@��a ���� ��� A�@v�����@��a ���� ��z A�@v�����@��a � ����� �{B�@v�����@NS�:!�a ������ �{ A�@v�����@NS�:!�a ���� �z A�@v�����@��a ���� �z A�@v�����@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa ���� � y A�@v�����@��a ���� ��x A�@v�����@��a ���� ��x A�@v�����@��a ���� ��x A�@v�����@��a ���� �� A�@v�����@��a ���� �Hn A�@v�����@��a � ����� ��nB�@v�����@NS�:!�a ������ ��n A�@v�����@NS�:!�a ���� �Im A�@��0T�b�0 !I��@��a ���� ��l A�@��0T�b�0 !I��@��a ��A#�` &�5���0T�b�0 !I��04�a��, a ��A#�` &�5���0T�b�0 !I��04�a��, a ���� ��k A�@��0T�b�0 !I��@��a ���� �Ik A�@��0T�b�0 !I��@��a ���� ��j A�@��0T�b�0 !I��@��a ���� �Ij A�@��0T�b�0 !I��@��a ���� ��i A�@��0T�b�0 !I��@��a ���� �Ii A�@��0T�b�0 !I��@��a ���� ��h A�@��0T�b�0 !I��@��a ���� �Ih A�@��0T�b�0 !I��@��a ���� ��_ A�@��0T�b�0 !I��@��a ���� �I_ A�@��0T�b�0 !I��@��a ���� ��^ A�@��0T�b�0 !I��@��a ���� �I^ A�@��0T�b�0 !I��@��a ���� ��] A�@��0T�b�0 !I��@��a ���� �I] A�@��0T�b�0 !I��@��a ���� ��\ A�@��0T�b�0 !I��@��a ���� ,r5A�@��0T�b�0 !I��p�a��, a ���� ,p5A�@��0T�b�0 !I��p�a��, a ���� �I[ A�@��0T�b�0 !I��@��a ���� ��Z A�@��0T�b�0 !I��@��a ���� ��Z B�A8��0T�b�0 !I��p�a��, a �ȈA� ��Y� ����@�@ ��0�c���4��#��T��PNS�ƎPNSٖ�@��a �ȈA� �IY� ����@�@ ��0�c���4��#��T��PNS�ƎPNSٖ�@��a ;J,@ �� �� ������a��pC�`0�0���� �IZ%�1K� 7�2F0bp p�V���#�`'j�,�,�1PAD!��@y(�p�$��A8�`��Խ�# ��;B!0OM[=�!8̀�f�`N3��#�,7m�� ��#�,wo���<vm���4��#��#��#��#�,a 9J,@ �� �� ������Q�$� E��,�@#�`�#c���p�Q��,Ca#�`�#d�$�Lj�� �Y-�,�1PAD!��@y(�p�$��A8��`��Է�#�3F�`N3ؼ�#�� �@̳[=�!8�`��`��ص�# ��9B:B�<�!�b��P�S�֎@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#>���p�Q��,Ca#�`�#?�$�Lj�� ��O-�,�1PAD!��@y(�p�$��A8��`��Է�#�36�@N3�;!0�n��,�];� 0��#��#��#�,�n���<un���4��[=�!8�`�֎@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#9���p�Q��,Ca#�`�#:�$�Lj�� ��N-�,�1PAD!��@y(�p�$��A8��`��Է�#�36�@N3�;!0�n��,�];� 0��#��#��#�,�n���<un���4��[;!�b���4��a 5J,@� ���,C #�`�1E�$� ���,�@#�`�2e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�,E�$� ���,�@#�`�-e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�''E�$� ���,�@#�`�'(e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�'"E�$� ���,�@#�`�'#e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |R�,�1bP |R�,�1PAD!��@y(�p�$��A8��0�c�`���4��#�36�`N3Զ�#�� �m��,Kn���<��#�,��#��Ǝ@��X<�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |�O�,�1bP |�O�,�1PAD!��@y(�p�$��A8��0�c�`���4��#�36�`N3Զ�#�� �m��,Kn���<��#�,��#��Ǝ@��X<�!�R�a � �X�@v���@0�@X:!8Ma � �T�@v���@0�@X:!8Ma � �`�@v���@0�@X:!8Ma ���� ��; A�@��0T�b�0 !I��@��a ���� � ; A�@��0T�b�0 !I��@��a ���� ��: A�@��0T�b�0 !I��@��a ���� � : A�@��0T�b�0 !I��@��a ���� ��9 A�@��0T�b�0 !I��@��a ���� � 9 A�@��0T�b�0 !I��@��a ���� ��8 A�@��0T�b�0 !I��@��a ���� � 8 A�@��0T�b�0 !I��@��a ���� ��/ A�@��0T�b�0 !I��@��a ���� � / A�@��0T�b�0 !I��@��a ���� ��. A�@��0T�b�0 !I��@��a ���� � . A�@��0T�b�0 !I��@��a ���� ��- A�@��0T�b�0 !I��@��a ���� � - A�@��0T�b�0 !I��@��a ���� ��, A�@��0T�b�0 !I��@��a ���� � , A�@��0T�b�0 !I��@��a ���� ��+ A�@��0T�b�0 !I��@��a ���� � + A�@��0T�b�0 !I��@��a ���� ��* A�@��0T�b�0 !I��@��a ���� � * A�@��0T�b�0 !I��@��a ���� ��) A�@��0T�b�0 !I��@��a ���� � ) A�@��0T�b�0 !I��@��a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� ,'4A�@��0T�b�0 !I��p�a��, a ���� ,%4A�@��0T�b�0 !I��p�a��, a ���� ,#4A�@��0T�b�0 !I��p�a��, a ���� ,!4A�@��0T�b�0 !I��p�a��, a ���� ��� B�A8��0T�b�0 !I��p�a��, a ���� �I� B�A8��0T�b�0 !I��p�a��, a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a �ȈA� ������@NS�9�D�`��, a �ȈA� � ����@NS�9�D�`��, a �ȈA� ���� ����@�@ ��0�c���4��#��T��#��T��#OD ��@��a �ȈA� � �� ����@�@ ��0�c���4��#��T��#��T��#OD ��@��a ��A� �J��v�0<Sa ��A� ����v�0<Sa ��A� �J��v�0<Sa ��A� ����v�0<Sa ��A� �J��v�0<Sa ���d�@v�<a ���d�@v�<a ���d�@v�<a ���d�@v�<a ���p�@v�pD� �a ���p�@v�pD� �a ���p�@v�pD� �a ���p�@v�pD� �a A, ��\`d�`�n@�������`tdld{@�;�;#��`�*��A8v�0<Sa A, d�\`��=�C8�<��<�C;�A=������}�l�#��`P ��A8v�pD� �a ���� ��� B�A8��`8E!��# )��@�Da ��A� ���v� a ���� ������0�d�2a ��A� ���v�@0��a �pCPa0bp �r6�� Ap�A8��@<1�9��a A,@ � ������ � �B0����@<1�9��a �pCPa0bp �r6C� Ap�A8��@<1�9��a A,@� ������ � �B0����@<1�9��a A, 4�\W ��8�C:�C9�C8��:��8́���} #��` a A,@�& !P�\Î$���M���&@�@ ��PX�0�� 8��# ұX:�!EB 4��# Y;� Q��# )a A,@�& !P�\Î$���M���&@�@ ��PX�0֎PHT�#��pH�P a�����#ұ���# �9��a A,@�& !P�܈A� Њ� �a� �A8 ��PX�0�0H�b�CD��P �2v�@0��X;� Qa A,@�& !P�܈A� Њ� �a� �A8 ��PX�0֎PHT�#�PH��#��0T@d��@,`�H a A,@�& !P�\Î$���M���&@�@ ��PX�0�� 8��# ұ:�P��#�L��# )֎0HTa A,@�& !P�\Î$���M���&@�@ ��PX�0֎PHT�#��@8���;B!��:�P��#�L��# )a A,@�O6!P\Ď$����B$H0�� ��PX�0� 8��# ұ:�P��# �& )v�@0���;� Qa A,@�O6!P\Ď$����B$H0�� ��PX�0�PHT�#�@8���;B!��:�P��# )���,@C���a #A,@�& !P�\Î�A~� 2b� ��6J�0�#�`�+`d��PX�0�� 8��# ұX:�!EB 4��#�,�m�CD֎0HT`�H��#�,a A,@�& !P�܈A� �G�# �`@+g��!�&��A� ���� ��PX�0&�`��Է�# ұ:�P��#�L��# )֎0HT`��, a "A,@�& !P�\Î�A~� 2b� ��6 �0�#�`�+`d��PX�0�� 8��# ұ�<�!�R߆�0T@d��@,`�H��# <!�a #A,@�O6!P\Ď�A~�L2b� ��6K$�hB����M�A8��PX�0� 8��# ұ=�!�R߆�0T@d��4� H��# )�0HT`��, a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0&�PHT�#��P8��܆�`H��#��#(��D�D-Sm��t,>b�H��#R$�@C�=�!Q���F�@8��<BHLDH�2:�Pa MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b� 1!Q��#6�pH��#>b��D>R�a FA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�PHT�#���L��#ұ��m��t,>b�H��#�Hm� 1!Q�d�CD��P �2a HA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ���<�HLDH�2���# �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�PHT�#��P8��܆�`H��#��#(��D�D-Sm��t,>b�H��#�Hm�����#$��D�D-��# Y:B1�a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�pHT�#>b�����#���H��#��X<HLDH�2�>b�CD��P �2v�@0��=��D>�#6�pH��#>b� 1!Q��#v��HT�#��a JA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�PHT�#��P8��ܖ�`H��#��#(��D�D-Sm��t,>b�H��# �& )��`HT�#��#$��D�D-��#N�#��0T@a MA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�pHT�#>b�����#���H��#���<HLDH�2�>b�CDv�@0��X:� a�b�����X<�HLDH�2���#ұ���>"Q���>a MA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`�'O`d��PX�0���L��#����9��b�����X>��D>�#��#R$�@C�="Q���Hm��t,>�#��#$��D�D-��# �<�!���a GA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ~�E�@��PX�0���L��#����9��b��D>�#��# ұ�������L��0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`�'O`d��PX�0���L��#����9��b������="Q���Hm��t,>�#��#N�#>r<BHLDH�2:�P��#�L��#ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<�zsy��`n v@`�dl@q�ld {p�<�A��#��`�>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ~�F�@��PX�0&���L��#����9��b��4� H��#N�#>b�����ܖ��H��#>b[<BHLDH�2>"Q���Hm�CDF�pH��#>a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#���L>b��D>R�a PA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0v��HT�#�����#R$�@C�<B"�����<BHLDH�2���=�D>�#>b�CDv�@0���<B"Q�����X>B�D>r���>�"���>�#���L���a HA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ���<�HLDH�2���# �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0f��HT�#�����#$ұ������#4��D�D-�����# Y:B1��9��b��D>�#>b��t,>b���X<�HLDH�2�>�#a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�pHT�#>b�����#���H��#��X<HLDH�2�>b�CD��P �2v�@0��=��D>�#6�pH��#>b� 1!Q��#v��HT�#��a PA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0v��HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d��@,`�H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a MA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�pHT�#>b�����#���H��#���<HLDH�2�>b�CDv�@0��X:� a�b�����=�!�����#,��D�D-��>"Q���>a PA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d�H��# �& )6��HT�#>�#���8���>�#���H��#�����#8��D�D-S�#>a A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��# �Y;�HLDH�2�掠�L��#��T5n���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������0n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������0n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������pn0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������pnPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������pn0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������pn0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me��_�O�H#�d���4UM<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������pnPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������pnPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-o� 1!Q˴<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������pn`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������pn`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#��T掠�L��# �Y;�HLDH�2��`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!��@NSY;�HLDH�2�掠�L��#(��D�D-�n���4U�[<�!8MU󶎐�Lv�0<Sd��_�O�H#�d��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2���������4M掠�L��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!F�������4MƎ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������0n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������0n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,��\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,T� �7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_�_�H#�d���4�m�=B���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2���������4M掠�L��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,D� 8W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m=B���>�HD4�=B���>�HD4a 2A,� 8�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� 8�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,D� !8�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� )8�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#��`�2��A8v�0<Sa A,$�\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#��`3��A8v�0<Sa 2A,4� 58�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� A8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� M8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,��\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,T� �7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,D� 8W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!F�������4MƎ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� 8�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� 8�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,D� !8�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� )8�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#��`�2��A8v�0<Sa A,$�\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#��`3��A8v�0<Sa 2A,4� 58�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� A8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� M8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#��`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#��`01��� ��#�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#��`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#��`01��� ��#�c��t �a ���� �G+A�@v�@0��:BQ Ea ���� �G+A�@��PT�Bv�@0��a ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@��PT�Bv�@0��a ��A� �G)#�`�0�v�@0��X:!�b�E,a ��A� ��(#�`�:�0�v�@0��X:!�b�E,a ���� Ȏ( �hB�&�İQ�C8��@<1�9��b�E,a ���� Ȏ( �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ��A� �)#�` ;�@� 0� ��@�@��@<1�9��b��,��#�Pa ��A� � )#�``;�@� 0� ��@�@��@<1�9��b�E,a��, a A, ��\U�C8��;�;�C9�������A #��`�*���@v� 4a ���q� �� B�A8��0T�b�0 !I��p�a��, q l2"�\�3�E<�^�3��>�`�3�I�b�486M�d�4XFX�f�5x�Z�h�5��]�j�5�6i�l�6�Fl�n�6��n�p�6�y�r�787}�t�7XG��v�8x���x�8����z�8�7��|�9�G��~�9�7����:@����:8�����:X�����;x0����;�@����;�0Ƀ��<��̃��=�ۃ��>8`ꃔ�?XP����?x�����@�����@�����A�0(���B�09���D�I���D8�X���EX�_���Fxo���G��~���H�Џ���I�𨄮�J�ૄ��J�����L8 ؄��Mh ߄��M��脼�N� ���N(����Nh ���N�����N� ����O�����OH ����O������O�0����O�����PHP ���P�� ���P�� ���P���PH����Q����Q�����Q( ���QH(����Q�(0���R�(�(���R)@*���RH)�+���R�)@-���R�)�.���R*P8���SH*�9���S�*p;���S�*0=���S+�>���SH+0H���T�+�I���T�+0K���T,�L���TH,�N���T�,X���U�,�Y���U- [���UH-�\���U�-P^���U�-�_���V.`i���VH.�j���V�.`l���V�.�m���V/�o���W(/`y���Wh/�}���X�/`����X�/����X�/�����X�/@����Y(8 ����YH8�����Y�8@����Z�8�����Z�8`����Z�8����Z9�����[89�����[x9`����[�9�����[�9`ȅ��\:@ʅ��\X: ̅��\�:΅��\�:�υ��];�م��]X;�ۅ��]�;�݅��]�;�߅��^<����^X<`���_�<�����_�=@ ���`8> ���a�>)���bx? 8���c�?�9���c�?P;���cH0=���cHH?���d�H�H���d�H�J���dI�L���dHI�N���d�IpX���e�IPZ���eJ0\���eHJ^���exJh���f�J0j���f�J0l���fKn���fHK�o���g�K�y���g�K�{���gL�}���gHLp���h�LP����h�L0����hM����hHM�����h�MИ���i�M�����iN�����iHN�����i�N�����j�NЪ���jOЬ���jHO�����j�O�����k�Op����kXP����kHX0����k�XȆ��l�X�Ɇ��lY�ˆ��lHY�͆��l�Y�φ��m�Ypن��mZ@ۆ��mHZ�݆��m�Z�߆��n�Z�膮�n[Pꆱ�n([p놳�nH[�솵�nh[�톷�n�[�o�[P����o�[�����o(\@����oX\p����px\� ���p�\� ���p�\����q�\`���q]���rH]0+���rh]�/���s�]�>���t�]X���u�]pi���v�] {���x^����y(^p����zH^P����{h^ʇ��|�^�ۇ��~�^�����^������^����_� ��Ҁ(_�����H_�����h_.�����_0=�����_�I�����_@M����_ Z���h�i���(h y��ՇHhP�����hh������h����މ�h�������h���̊�hp�����i����ϋ(i����̌Hi������hi ������i������i0������i������i� ����j����(j@+��ϒHj�.����hj�=�����j�J��Ô�j�M�����j`Y�����j�\����k�l����(k�{���Hk����hkЏ�����k ���͙�k���͚�kЯ�����k�����l0�����(l����ɝHl������hlp�����l�������lP���ߟ�l�������l�����m�����(m.����Hm�:��ǣhm>�����m�J�����m�Z����m�i����m y����n�|����(n�����Hn������hnp�����nP������n������n�������n0�����o�����(o �����Ho�����ho �����op ����o ����o�)�����o�-����x@=����(x`J��ĴHx@N����hx Z�����x�]�����xPn�����x~�����x������y���͹(y������Hy�����hy@������y�������y����ؽ�y`������y�����zP����(z`����Hzp ����hzp�����z������z�.�����zP=�����z@J����{@N����({`[����H{�j����h{Py�����{������{������{�������{������|������(|������H|������h|0������|�������|�������|�������|������}������(}� ����H}�����h}@+�����}@/�����}�=�����}�J�����}�N����~�Z����(~�^����H~pn����h~ }�����~Ћ�����~�������~�������~����� �����(п����H������h�������0������������ ������0������0 ����(������H�`(����h�/������<������H����Ȉ M�����`\�����k����(��y����H��}����h�p�������`�������������؉`�����������(�������X�p�������������Ȋй�����������������(�@�] �v8threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_70_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z16__isGridConstantPKvllvm.nvvm.isspacep.grid_const_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z31__cvta_generic_to_grid_constantPKv_Z31__cvta_grid_constant_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj_Z16__match_any_syncjjllvm.nvvm.match.any.sync.i32_Z16__match_any_syncji_Z16__match_any_syncjmllvm.nvvm.match.any.sync.i64_Z16__match_any_syncjl_Z16__match_any_syncjy_Z16__match_any_syncjx_Z16__match_any_syncjf__float_as_uint_Z16__match_any_syncjd__double_as_longlong_Z16__match_all_syncjjPillvm.nvvm.match.all.sync.i32_Z16__match_all_syncjiPi_Z16__match_all_syncjmPillvm.nvvm.match.all.sync.i64_Z16__match_all_syncjlPi_Z16__match_all_syncjyPi_Z16__match_all_syncjxPi_Z16__match_all_syncjfPi_Z16__match_all_syncjdPi_Z11__nanosleepj_Z9atomicCASPttt__usAtomicCAS7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! �y !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L  Q&ӄAB� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��E䔁�ȡ��TT����*�PRE�Z� W5e�(�S�AU H�b<QU�_�Ȫ"�aU 0H�R�9@\��ȫ"PP�Ew��h,*�e�EfQE�-J��(�k[�Hq��"K�`I\$�R�P袺H�"Hs�Eh �h/��t�E~Q E0 �)B#�a�I21�#R�@Jb�US�j�Ɗ�KB�X��"�a�0�dD%S�d,���"��iV�+0�8+�P@��� �� ��p��he���2��2\�VdZ�X�B� W���V�+ⲄX+�t�B��ኻ�!��p�^h�le��/:��2\X d[��­ W� �V�+#�x+��UC��ኄ~!��p�P�pe�b�a��2\aY2d\�� B� `)W���+�C�P��+�S@� P��+�S@�~Q��+��iW�;ĺ��n ` `� �a�"��P� ���`�yE �J��E����E��;��Z�!��;�0�[D_ȋ��+B{t~F0��"�w�W������^_�_��,�|�рE �0*��%FA?�(A#��K��4�/���K��49�!��H�2\QDa!�( ��b\�aX�+ֺ�ҰW�u�w�A⊸�<,�t����.  q�^@$㊾��B\�w�Ÿb�;��R�W�b1�H �\,��`�X�+&����WX��/��B4���!�l,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �!��0;��q � �e�p�c0 � ��`��q�a0�($r�8B1�`��`� @���\0�Q  ��L.)��'����v@~� �a��@;����8�` �|�q�b0�(�r�8R1�`$v�`� @�ڿ\0�U  ��b� ����@;�� r�8Z1�`d�A.�+�~5��x�` ���`� @������v@��r�c0���Y@�r  ��x@ �a��@;�qd9�1�`T��+�,�FPp��` �P, �`� @��I�����v@�)��q�b0�hOW0�[  ���� Ɓ��@;��\�8r1�`TƂ+�.��Yp���` �Ph �`� @�zq�����v@�.��q�b0�h�W0�_  ��� ���@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��_+0D*Y��H4K@�@��l �0"�-�C��%"v`�d���$ �З���!��S=�0Dja��H=LD�@�ɍ��0"�1!�C�X&��`�4�Ą$ �왘V�!RJ�K�0D�i�� �HjM<4@�)� �&"�6�C��&�� `�d�D� ����!҉RY0D�q�A �HhN@k@� � �-"�:�C�\'"� `���t �������!��S_0D { �HqOD�@�I� �4"�>1�C��'�� `��� �\��f��!��m0D�â� �H�XX�@�I �7"�cq�C��,"� `���� �䲘���!Ri�{0D����H�Y �@��= )>"�g�C$-�� `��� �ƴ`���!қ�|0D�ӂ��H�Z �@�)V g>"�j��C�u-�� `���3 �J�@���!R��|0D��"��Hl[L�@��o�h>"�n1�C��-�� `��4 �B�p���!� �|0D��™�Hm\@�@��� g>"�r�C�].�� `���E5 �F�����!�M�|0DZ납�Hw]0�@�i� �>"�v��C��.�� `��ޅs ��p���!R��}0D��b��H>^(�@� ͋e?"�y��C$>/�� `�tꅲ@ �b�`���!R�I~0D2����H�^ �@�I� f?"�|��C��/�� `����@ ���H���!R��~0D��"��Hy_ �@�)�$?"�~��C$�/�� `���ű@ �ĿH���!���~0D�����H�_�@�����?"��q�C�4�� `�$��" �r� B��!R�0D*C��Hmh�@�I��?"��a�C�P4�� `���F�@ �\�@F��!�-Ĉ0D�E)�H�h(%@�� �D"ѣ��C�~4�� `�D��@ �P�H���!RL�0D�I#�H`i#@��, EE"��Q�C$�4�� `����@ ���XX��!�j�0D�MC)�H�i%@� < �?"��Q�C��4�� `�D��@ ���@���!��0D*Q��H-j�@�IF��?"�A�C�5�� `�T�F�@ ���@���!���0D�SC�H�j#@��T��?"��A�C$Y5�� `���F�@ �~�@���!ҹ�0DbW#��H�j�@�i_��D"��q�C��5 `����"@ ���@���!R��0Dr[#��Hwk�@��o �?"��Q�C$�5�� `�4���@ �r�H���!���0DB_#��H�k�@��~��?"��a�C$6� `�Æ1"@ �l�@���!��0Dc���Hjl�@�ɍ �?"ٱQ�C�=6�� `�T���@ �X�P���!�-�0D�e��H�l$#@�i� gD"����C��6� `��ӆ2"@ ���h`��!\�0D�k#��H�m�@�ɴ EF"��q�C��6 `�$�"#@ ���H���!�|�0D�o��H!n�@��čDF"��a�C�7 `����!#@ ���h���!Ҝ�0D�s#�H�n#@�iՍ�F"ѺA�C$\7� `��F1"@ ���HF��!һň0D�w#��H�n�@�i��?"��a�C$�7�� `����@ ���H���!���0D�{#��Hyo�@��� �F"����C$�7 `�d��a#@ ���0���!���0D����H�o �@����G"��1�C�<�� `����@ �d�0���!�0D�����Hbx 8@�� �?"����C�R<�� `�t���@ ���P���!�;�0D��c��H!y �@�)%��?"���C��<�� `���@ ���H���!�_�0D*ͣ��H�y <@�I7��G"��A�C��<�� `�4� ���@���!҈�0DB��H0z`@��FL"�聀 C$3=0 `��& ���@���!���0D2��H�z <@��V�G�"���C$q= `���@ ���@���!��H|0D���H&{`@�ieL"��a� C��=0 `��& ���@���!R��0D���H�{ `@�)udD"���C��= `�Ի�# ���@t��!R���0D�߃ �H(|<b@��FL�"��� C$9>1 `��G$& �d�h���!�/��0D�� �H�|Dd@�ɥ��L�"��� C$�>1 `�d��#& �J�`���!Rl��0D� �H�}<b@�i�FL�"��� C$?1 `�$��#& ���`���!R���0Db�� �H�~<b@���FL�"��� C��?1 `���#& �t�X���!R���0D��� �H�<b@���FL�"��- ���` �H�@ C�D���!� "��0DC�1 �Hp�Df@�)��L�"�"� C$pD4 `��ȡ&0 ��)���!�>"���0D I�` �H&�`n@��'N�"�%�� C$�D8 `�d�'@ ������!�m" �0D�M$� �H�$<@�)>��G�"�'�� C$E `���H�#@ ��Ix��!R�" �0D�S��H��$<@��V��G�"�+��C�tE `�$��G' �`y���!��"�~0Dr[�� �H}�<�@��u��N"�/�C��E�� `����@ �v����!�#��0D:e�� �H��8x@�i�O�"�3�� C�F<; `���ȃ'@ ��y���!�^#�0DRm�� �H��pz@����O�"�8�� C�G> `����'@ ������!Ҫ#�0D�u�� �H�<|@� ߑ�O�"�<�� C��G>? `�D�� C$�G2 `�4�C&@ ��y���!� &��0D���1�Hk�8f@�)��L"�bҘ C�ZL3 `�4� c&@ ��1y���!�?&��0DZ��1�H:�8f@� -��L"�e� C��L3 `�D��c&@ ��3q���!|&��0D���1�H,�8f@�IG�gT"�iŒ C�:M,1 `����$&@ �z5����!�&��0D:���H=�Hb@��m�KL"�n2� C��M,3 `��� e&@ �F8����!�'��0Dz��"�H��Hd@�間�L"�s2� C��N�Q `�tӉ4*@ ��:�F��!h'Ө0D����H�\b@� �KL"�xr� C�6O.1 `�D��$&@ �n=����!һ'��0D���H:�Lb@���LL"�~B� C��O.3 `��Ie&@ �JP����!R*��0D�C�"�H��Ld@���L"գB� C��T,1 `����$&@ ��R����!j*��0D�M�2�H�Pf@��D��L"�R� C�8U,1 `�t��$&@ �rU����!�*��0DY�2�H9�Pf@��m��L"��R� C��U,1 `����$&@ �BX����!+��0DZc�2�H��Pf@�����L"��R� C��V,1 `�tӊ$&@ ��Z����!h+��0D�m�2�H�Pf@�����L"ѸR� C�4W,1 `���$&@ �b]����!�+��0D�w��H1�Hb@�i�KL"�2� C��W���!�+�@���l `��˴0D ��Z"��"-@ �Tq��H�L C�z\.4 `�Ē �&@ ��r����!^.�0Dj���H�Hb@��>�KL"��2� C�],3 `�T��d&@ �Pu����!ү.��0D����H)�Hb@�ig�KL"��2� C��],3 `��� e&@ ��w����!� /��0D���Hp�Db@�)�KL"��"� C�t^*3 `��ϋd&@ �`z����!�Y/��0D���H��Db@��KL"��"� C�_*3 `����d&@ ��|����!R�/��0D����H�Hb@�)�KL"��2� C��_,3 `���d&@ �h����!��/��0D����H5�Hb@�� �KL"�!3� C�Xd,3 `�t� e&@ �������!�L2��0D:KF)�Hq� l@�)/�T "�&3� C$�d(5�`�d�L�&@ �N����!��2�0DRS&��H{�d�@��V�("�+��  C$e�8 `�� v*@4 �Җy���!�2ة�0D�]��H��t�@����/U"�1� C$Qf� U"�3� C��f�Z `���LW  ����j��!�n3\-0D�o� R��!�3dP  �@�Y���!Ҫ3�|�0D�ufZ�H��X���)��U"�<�� C��g�U `�D�̵*@< �v�����!��3�0D���H.�@�@���)>"�aI �D��d��!R-6�0Db�f��H��X�@��&KV"�e�� C��l0Y `����%+ �䳹d��!R�6��0D���� �Hj�8�@� O�V"�j�� C$sm.[ `�ԯͤ+ �`��t��!��6��0D�����H��`�@��|LW"�os� C$n.] `�����+ �@��x��!�-7�0Dr����H%�L�@� ��IW"�uc� C��n,] `�t� �+ �޻�t��!҉7��0D�����Hu�,�@� ԛ�W"�z�� C$[op `���2.D �ؽY �H��,�@�I��\"�|� C$�o"v `�4�M�. �H�y���!��7O�0D����H��,���)�e\�"���@ �n�Y|��!�:Ѿ0D�C'��H��H!@���d"��� C$|t � `�����2 �|�Y^��!RZ:K�0D�K'��H��D7@��6Ig"���� C$�t_ `��.D �X�a���!�:̸0D"S��"���� C$>u"s `�ԪN�. �|Ց���!�:һ0DY��H2�@�@�Il� _"ݭÀ C��u�q@`���0D�]���H��H�@�)�_"��3� C$v&� `��Nt2 �DىT��!�,;W�0DRg�y�H��01@�I��f"Ѵ#� C$�v&� `����+ �J�a|��!Rl; �0D�m�"�H��0�@��� `���+ �Z܉���!��;Q�0DzsGb�H��H�@�i�H^"��� C�yw*| `���.H �h�a� �!�; @����W"�#� C$�w$ `����2 ��ߙH��!�>��0D��'R�Hd�\-@�i�e"���� C�Y|$� `�T��t3 ���t��!�J>��0D�ɇ��Hb�0�@��-\�"��Ì C$�|��!�l>��0D��'2�H��D�@� D�]"��#� C$2} y `�D�T/ �H�����!R�> � 0D*ׇ$�H��0C�~}_ `�����/ �v�����!R�>S�0D�g"�H��D'@��|�He"��s� C$~�� `���3 ����h��!�?��0DB�g��H��0�@���W"��À C�~p `���3.D �n�a �Hc�0�@�魟�\"��� C��~$v `�4ޏ�. �������!R�?P�0D����Hj�0�����f\�"���@ �\�a|��!��?Ҿ0Db�G��H��L!@�)柉d"��� C��"� `�d���2 �z�a^��!R�?L�0D��G��H'I7@�)�Ig"�!�� C$<�_ `�D�.D �`b���!/B̸0DBG��"�#�� C$��"s `��P�. ������!]Bһ0D2M��H� A�@��<� _"�'Ā C���q@`�4�0D�Q���Hk I�@��O!�_"�*4� C$q�&� `�T�Pt2 �L�T��!��BW�0Dr[�y�Hz 11@��t!�f"�.$� C$��&� `�Կ�3 �Rbx��!R C��00D c��&�Hm 1`��)�!Fl"�2�� C�X�$� `�4ΐd6 ������!JC��0D�i(b�Hl En@���! n"�6�� C�߆��`���#6 ��bx��!҈C��0D�qh��HiQv@���! o"�:$� C�q�$� `�T��7 �Zb@��!R�C��0D*{h"�HxM�@�i�! u"�>�� C���� `�t��3L �F0b|� �!� F �00D����Hg1<@�i#�l"�b$� C�[�&� `���Ѥ6 ��1����!�KF��0D��Ȃ�Hu1>�)4#l�"�fĈ C�܌� `�T��$7 ��3����!ҊF��0D�ш��HsIz@��T#�o"�j�� C�w�� `���#: �N6�H��!��F��0DjۈB�H�1<@��u#�g"�n�� C���``��6L ��7b���!R G �0D��H"�HgIf@�)�� m"�r4� C�_�"� `��Q�6 �B:����!�MG��@0D�(�Ho1b@�i�#�g"�v4� C$ݎ&� `���e7 �B<����!R�G��0D:�H��Hya~@�)�#t"�zĈC�t�&� `����d: �^>�P��!��G �0Dz����H{1>����#�g�"�~Ā C�ߏ� `����3 ��?����!R J��0D�AiB�Hn(Mj@�)��m"ɢ� C�q�,� `����3P �JRb� �!RLJ��0D�I���Hi)Mr@��/��n"��D� C��(� `�t���7 �RT����!ҎJ��0D�S��H*1�@�iU��t"��4�C�x�(� `�T��5 �vV����!��J�|0DB]��H�+Y�@��~%.>��"Űd�C�3�,� `����:@@ �rY�T��!�;K��0D*i�R�H;-Y�@�)��'?�"��d�C$ۖ(< `���; �D\�d�!��K�0D�s ��H�.q��I�%�v"����C$��0� `�$��; �T_�t��!��KЪ0D� �*�H"85�@����%vY $2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�Bb�C �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �alignF&0��a0��a0�p�0���0�0�0��a0�`�0��0�0�0���0��a0���0���0���0�0�0��a0�`�0���0� �0���0���0�P�0���0�@"1�p#1�&1�0'1��)1�+1��x1��a0��y1��~1��1���1���1���1���1�p.�5��.�5��.�5�/�5�0/�5�`/�5��/�5��/�5��/�5� 2�5�P2 6��2!6��2"6��2#6�P3&6��3'6��3(6�p.06��.16��.26�/36�0/46�`/56��/66��/;6��/<6� 2=6�P2>6��2?6��2`6��2a6�P3d6��3e6��3f6�p.n6��.o6��.p6�/q6�0/r6�`/s6��/t6��/y6��/z6� 2{6�P2|6��2}6��2~6��26�P3�6��3�6��3�6�p.�6��.�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�P3�6��3�6��3�6�p.�6��.�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�P3�6��3�6��3 7�p.(7��.)7��.*7�/+7�0/,7�`/-7��/.7��/37��/47� 257�P267��277��287��297�P3<7��3=7��3>7�P6f7��a0�p6g7��a0��6h7��6i7��a0��6j7��6k7��a0�7l7�07q7�P7r7�p7s7��7t7��7u7��7v7��7w7�P:z7�p:{7��:|7�P6�7�p6�7��6�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�P:�7�p:�7��:�7�P6�7�p6�7��6�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�P:�7�p:�7��:�7�P6 � �M#i#���ڌ`0��6$� �M #qc���ܬ`0�P7,� �M #y���޼`0��70� �M #�C�����`0��:6� � 3 E �0�1À� C3 Jp�0,3��� �03 O��0@A4� � �D3 T�0TA4�`� �03 X�0dA4à� �D3 \�0tA4��� ��� C`0� �0�A3 d�� C`0�`�0�A3 h3 i3 j3 k03 l03 mD3 nD3 o3 p3 q3 r03 s03 tD3 uD3 v03 wD3 xD3 y3 z3 {3 |03 }03 ~D3 D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 03 !03 "D3 #D3 $3 %3 &3 '03 (03 )D3 *D3 +03 ,D3 -D3 .�� L11� AL�0�D@3 5�� �M71À�M�0�D�3 :�� �N11��M�0�D@3 >�� �O71�M�0�Ep3 b�� �X/1�@AL�0�E3 f�� �Y41À�M�0�Ep3 j�� �Z11��AL�0�E@3 n�� �[71��M�0�E@3 r�� �\71�@�K�0�E3 v�� �]41ÀM�0�Ep3 z�� �^/1��AL�0�E3 ~�� �_41��M�0�Fp3 ��� �h71�@�M�0�F�3 ��� �i11ÀM�0�F@3 ��� �j71���K�0�F3 ��� �k41�M�0�Fp3 ��� �l41�@�M�0�Fp�3������������������������������������������������������������������������������������������������������������������'b b b b b b b b b b b b�n�n�n�n�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�2��t������\�������F j#!7;�6�07�7�0��7��QT�6n7rC7v�7z�7~<�C<ƃ<��<�=�C=փ=��=�>�C>�>��>�?�C?��?��?�DBDDF�DJ�DNERDEV�EZ�E^FbDFf�Fj�FnGrDGv�Gz�G~L�DLƄL��L�M�DMքM��M�N�DN�N��N�O�DO��O��O�TBETF�TJ�TNUREUV�UZ�U^VbEVf�Vj�VnWrEWv�Wz�W~\�E\ƅ\��\�]�E]օ]��]�^�E^�^��^�_�E_��_��_�dBFdF�dJ�dNeRFeV�eZ�e^fbFff�fj�fngrFgv�gz�g~� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �dv�\��������4Ma A,$� � �dv�\��������4Ma A,T� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,D� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,� � ��6C�A8 v�\��`��������4M��������4Ma A,D� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,t� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � �dv�\��������4Ma A,4� � �dv�\��������4Ma A,d� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,D� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,t� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,� � ��6C�A8 v�\��`��������4M��������4Ma A,4� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,d� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � �dv�\��������4Ma A,4� � ��6C�A8 v�\��`��������4M��������4Ma A,d� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,$� � ��6C�A8 v�\��`��������4M��������4Ma A,T� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,T� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma Ĉ�� �� �pC`f0��,�0K0 TD�B�@��0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1��`NSٽ&$@#����� & ұX;� ��#$@#������#��Twm���4Ս?� 0��#�,6o�� &�`NS�&��T8m� ��;4n���4�m���4Un���4o���4��#��T5n���4U��9B:BX<!�n���<wn���4�M�=�!8Me�V�@��>�!8Me�a Ĉ�� �G� �pC`f0��,�0K0 TD�B�@��0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �Q~Bp�p r2b` �~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1��`NSٽ&$@#����� & ұX;� ��#$@#������#��Twm���4Ս?� 0��#�,6o�� &�`NS�&��T8m� ��;4n���4�m���4Un���4o���4��#��T5n���4U��9B:BX<!�n���<wn���4�M�=�!8Me�V�@��>�!8Me�a ���� �G� ˆ�� ć�B�@v�������P�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|ȟ����A|П\p�@�@T� WC��5��`NSٽ& ұX;� ��#��T7n���4խ�?�!8Mu�0�`� ��4��a��D��@̀�;B!8Me<B!8M�[=B!Q}�<B!8M�;!8Me���4U]�=�!8MU㶏`��ܷ &��Txo� ��4U��9B:BX:B X<!�n��, n[`�!˂�6�`NS��#@3Դ�#��T�m���4��[>!�a ���� �Gz ˆ�� ćzB�@v�������`�����#�,>Ra ���� �z A�@v�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|ȟ�@��A|П\p�@�@T� WC��5Ə`NSټ& ұX;� ��#��T7m���4�m`�!8Mu�`��ػ�# @3�`�!8M��6�`NS�&Nd� ��4��?�!�r���@̀�;B!8Me�<B!8M�<B!8M�;!8Me���4U]�=�!8MU�v�`NSպ�#��T5o��tD�m�`�A`��`��tD�&�,�m�� 5m���4�}[>!�a ���� ć� ˆ�� ���B�@v�������P�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|ğ\p�@�@T� WC��5��`NSٽ�#�,v�`NSٶ& ұX;� ��#��T7n���4խ�?�!8Mu�0�`� ��4��a��D�PNS�&�`NS��#��T��#@3�V�PHGT�Ǝ@NS�<B!8M�=�!8MU�f�`NSո &��T�m� ��4U��9B:BX:B X<!�n��,�}�?�!˂��`����#@3Դ�#��T6a ���� ��~ ˆ�� �B�@v�������`�����#�,>Ra ���� ć~ A�@v�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|ğ\p�@�@T� WC��5Ə`NSټ& ұX;� ��#��T7m���4�m`�!8Mu�`��ػ�# @3�`�!8M��6�`NS�&��T�n��,˭�;4n���4�m���4Un���4o� �Y=B!Q};!8Me���4U]�=�!8MU�v�`NSպ�#��T5o�`�A`��`��tD�&�,�m�� 5m���4�}[>!�a Ĉ�� �G� ˆ�� ć��pC�f0��,�0K0 TD B�@ ֎@N3;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|̟����A|ԟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������Ƙ0H�b��tDf��������Ǝ0�`���4�m���4Un���4o��,�}[;!8Me���4U]�=�!8MU�v����`��ඥ#� &�,8o�� 5m���4�m�>!�b���4���>�!8Me�֏`NSݸ�#��T�n� ��<��`NSݼ!&��&��T8n� ��`�!8M���@̀�=B!Q}a�!8M��v�`NS��#����`NS�-&��T� a Ĉ�� ć� ˆ�� ����pC�f0��,�0K0 TD B�@ ֎@N3;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|ȟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������Ƙ0H�b��tDf��������Ǝ0�`���4�m���4Un���4o��,�}[;!8Me���4U]�=�!8MU�v����`��ඥ#� &�,8o�� 5m���4�m�>!�b���4���>�!8Me�֏`NSݸ�#��T�n� ��<��`NSݼ!&��&��T8n� ��`�!8M���@̀�=B!Q}a�!8M��v�`NS��#����`NS�-&��T� a � ��A|�^ dv�������0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|��\p\@�@T WC��<Ə`NSټ%& ұX;� ��#��T�m���4Ս`�!8Mu�&�`NSݼ &��Two�� F�`NS�&��T�n� ��;4n���4�m���4Un���4o��tD�m���4��#��Tum���4U�b�!8M��v�`NS崝#��#��#��#��V�`����# �0X`B ý�<B4CM�=�!8Meۆ�`NSٸ�#��Tvn���4��[?!�a A ��A|�W dv�������0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �� �w�E�9� \p\@�@��A|��\p\@�@T WC��<��`NSټ%& ұX;� �&��T7m� ��4�m�`�!8Mu�F�`NSݹ�# @3�a�!8M��v�`NS�!&��T8n� ��;4n���4�m� �,��<B!8M��<B!8M�[=B!Q};!8Me���4U]�=�!8MU�v�`NSպ�#��T5o���4U��9B:BX:B X<!�n�0 �P�p�6�P�PӶ�`NSٴ�#��T�m��,��#��T�a � ��A|�^ dv�������0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|ԟ\p\@�@T WC��<Ə`NSټ%& ұX;� ��#��T�m���4Ս`�!8Mu�&�`NSݼ &��Two�� F�`NS�&��T�n� ��;4n���4�m���4Un���4o��tD�m���4��#��Tum���4U�b�!8M��v�`NS崝#��#��#��#��V�`����# �0X`B ý�<B4CM�=�!8Meۆ�`NSٸ�#��Tvn���4��[?!�a A ��A|�W dv�������0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �G� �w�E�9� \p\@�@��A|ԟ\p\@�@T WC��<��`NSټ%& ұX;� �&��T7m� ��4�m�`�!8Mu�F�`NSݹ�# @3�a�!8M��v�`NS�!&��T8n� ��;4n���4�m���4Un���4o��tD�m� �,��;!8Me���4U]�=�!8MU�v�`NSպ�#��T5o���4U��9B:BX:B X<!�n�0 �P�p�6�P�PӶ�`NSٴ�#��T�m��,��#��T�a � ��A|�^ 7x`� �� ��@@� d Ǝ0�c�`�A`��`�0 ֎@N3�:!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H֏`NSټ5&$@#�����A& ұ�;� �)&$@#������#��T�m� ��4Ս[`�!8Mu떘0�c� ��4��a�!8Mu�ƘP̓�Ǝ0�`� ��4^�a�!8M���@̀�;B!8Me�=B!Q}[<B!8M�[;!8Me���4U]�=�!8MU�6�PNS�`NSἝ#��#��#��#��f�`���-&��Tym� ��4U��>� �=&��Tyo� 0 �n�� 5m� �>�!8Meۖ�`NSٸ�#��Tvn���4���?!�a � ��A|�^ 7x`� �� ��@@� d Ǝ0�c�`�A`��`�0 ֎@N3�:!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|؟\p\� 7��� ������ 7��� ��@ #@�@T� WC��H֏`NSټ5&$@#�����A& ұ�;� �)&$@#������#��T�m� ��4Ս[`�!8Mu떘0�c� ��4��a�!8Mu�ƘP̓�Ǝ0�`� ��4^�a�!8M���@̀�;B!8Me[<B!8M��<B!8Mś=B!Q}[;!8Me���4U]�=�!8MU㶘`NS�!&��T8o�`�A`��`� ��4Uޛ<!�n� �, ��c�!8M�憐0�`� 0 �n�� 5m� �>�!8Meۖ�`NSٸ�#��Tvn���4���?!�a ���� �G� �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��@��a ���� �Gz �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��`���a ���� ć� �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��@��a ���� ��~ �p1�����Q�D8 ��0�c�`�A`���4�n����#��T��`���a bA,@��Uz�P��w@!�^p��x�pr2b` �~Bp�p r2b` ��~Bp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<��`NSٽ &��!& ұ�;� ��#��Twm���4�}`�!8Mu��0�c� ��4���?�!8Mu㦏`��ؼ�# @3�`�!8M��F�`NS�&��T�m� �<4n���4�m���4Un���4o���4��#OD ��=�!8MU�V�`NSպ&��T8o�`�A`��ÿ8&�@HG��a�!8M��v�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �~Bp�p q1b` ��~Bp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<֏`NSٽ!& ұ�;� ��#��T7m� ��4�][`�!8Mu�&�`NSݺ�# �a�!8Mu�`��ظ&��Two�� f�`NS�&��T8n� �<4n���4�m���4Un���4o���4��#��T5m���4Um[:��D����#��T�n���4U��9B:B�:��D��/��#��6�P�s`NSٴ�#�,��`NSٹ�#��T�a bA,@��Uz�P��w@!�^p��x�pr2b` �a~Bp�p r2b` �~Bp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<��`NSٽ &��!& ұ�;� ��#��Twm���4�}`�!8Mu��0�c� ��4���?�!8Mu㦏`��ؼ�# @3�`�!8M��F�`NS�&��T�m� �<4n���4�m���4Un���4o���4��#OD ��=�!8MU�V�`NSպ&��T8o�`�A`��ÿ8&�@HG��a�!8M��v�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �a~Bp�p q1b` �~Bp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<֏`NSٽ!& ұ�;� ��#��T7m� ��4�][`�!8Mu�&�`NSݺ�# �a�!8Mu�`��ظ&��Two�� f�`NS�&��T8n� �<4n���4�m���4Un���4o���4��#��T5m���4Um[:��D����#��T�n���4U��9B:B�:��D��/��#��6�P�s`NSٴ�#�,��`NSٹ�#��T�a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v���@��a ��A� ����v� ��#�,a ��A� ���v� ��#�,a ��A� ����v� ��#�,a ��A� ���v� ��#�,a ��A� ����v� ��#�,a ��A� �G��v� ��#�,a ��A� ����v� ��#�,a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� ����v� ��#�,a ��A� �G��v� ��#�,a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� �ǿ�v� ��#�,a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ��A� �G��v� ��#�,a ��A� �ǽ�v� ��#�,a ��A� �G��v� ��#�,a ��A� �Ǽ�v� ��#�,a ��A� �G��v� ��#�,a ��A� �ǻ�v� ��#�,a ��A� �G��v� ��#�,a ���� �� A�@v�����@��a ��A� �G��v� ��#�,a ��A� �ǹ�v� ��#�,a ��A� �G��v���@��a ��A� �Ǹ�v���@��a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ��A� �G��v���@��a ��A� �Ǯ�v���@��a ��A� �G��v���@��a ��A� �ǭ�v���@��a ��A� �G��v���@��a ��A� �Ǭ�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ��A� �G��v���@��a ��A� �Ǫ�v���@��a ��A� �G��v���@��a ��A� �ǩ�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ���� �ȟ B�A8v�����0@�c��, a ��A� �Ǟ�v���@��a ��A� �H��v���@��a ��A� �ȝ�v���@��a ��A� �G��v���@��a ��A� �ǜ�v���@��a ��A� �H��v���@��a ��A� �ț�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ���� �Ț B�A8v�������@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� �ǘ�v���@��a ��A� �G��v���@��a ��A� �Ǐ�v���@��a ��A� �G��v���@��a ��A� �ǎ�v���@��a ���� �Ȏ B��@v���@H�Y:!<Sa ���� �H� B��@v���@H�Y:!<Sa ��A� �G��v���@��a ��A� �nj�v���@��a ���� ��� A�@��v�4��@��a ��A� �Nj�v���@��a ��A� �G��v���@��a ���� �� A�@��v�4��@��a ��A� �G��v���@��a ��A� �lj�v���@��a ��A� �G��v���@��a ��A� �Lj�v���@��a ��A� �G��v���@��a ��A� ���v���@��a ��A� �G�v���@��a ������ �H A�@v�����@NS�:!�a � ����� �HB�@v�����@NS�:!�a ���� ć~ A�@v�����@��a ���� ć~ A�@v�����@��a "D,��� �����A|�\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa ���� ��} A�@v�����@��a ���� � } A�@v�����@��a ���� � } A�@v�����@��a ���� � } A�@v�����@��a ���� ��� A�@v�����@��a ���� ��z A�@v�����@��a � ����� �{B�@v�����@NS�:!�a ������ �{ A�@v�����@NS�:!�a ���� �z A�@v�����@��a ���� �z A�@v�����@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa ���� � y A�@v�����@��a ���� ��x A�@v�����@��a ���� ��x A�@v�����@��a ���� ��x A�@v�����@��a ���� �� A�@v�����@��a ���� �Hn A�@v�����@��a � ����� ��nB�@v�����@NS�:!�a ������ ��n A�@v�����@NS�:!�a ���� �Im A�@��0T�b�0 !I��@��a ���� ��l A�@��0T�b�0 !I��@��a ��A#�` &�5���0T�b�0 !I��04�a��, a ��A#�` &�5���0T�b�0 !I��04�a��, a ���� ��k A�@��0T�b�0 !I��@��a ���� �Ik A�@��0T�b�0 !I��@��a ���� ��j A�@��0T�b�0 !I��@��a ���� �Ij A�@��0T�b�0 !I��@��a ���� ��i A�@��0T�b�0 !I��@��a ���� �Ii A�@��0T�b�0 !I��@��a ���� ��h A�@��0T�b�0 !I��@��a ���� �Ih A�@��0T�b�0 !I��@��a ���� ��_ A�@��0T�b�0 !I��@��a ���� �I_ A�@��0T�b�0 !I��@��a ���� ��^ A�@��0T�b�0 !I��@��a ���� �I^ A�@��0T�b�0 !I��@��a ���� ��] A�@��0T�b�0 !I��@��a ���� �I] A�@��0T�b�0 !I��@��a ���� ��\ A�@��0T�b�0 !I��@��a ���� ,r5A�@��0T�b�0 !I��p�a��, a ���� ,p5A�@��0T�b�0 !I��p�a��, a ���� �I[ A�@��0T�b�0 !I��@��a ���� ��Z A�@��0T�b�0 !I��@��a ���� ��Z B�A8��0T�b�0 !I��p�a��, a �ȈA� ��Y� ����@�@ ��0�c���4��#��T��PNS�ƎPNSٖ�@��a �ȈA� �IY� ����@�@ ��0�c���4��#��T��PNS�ƎPNSٖ�@��a ;J,@ �� �� ������a��pC�`0�0���� �IZ%�1K� 7�2F0bp p�V���#�`'j�,�,�1PAD!��@y(�p�$��A8�`��Խ�# ��;B!0OM[=�!8̀�f�`N3��#�,7m�� ��#�,wo���<vm���4��#��#��#��#�,a 9J,@ �� �� ������Q�$� E��,�@#�`�#c���p�Q��,Ca#�`�#d�$�Lj�� �Y-�,�1PAD!��@y(�p�$��A8��`��Է�#�3F�`N3ؼ�#�� �@̳[=�!8�`��`��ص�# ��9B:B�<�!�b��P�S�֎@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#>���p�Q��,Ca#�`�#?�$�Lj�� ��O-�,�1PAD!��@y(�p�$��A8��`��Է�#�36�@N3�;!0�n��,�];� 0��#��#��#�,�n���<un���4��[=�!8�`�֎@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#9���p�Q��,Ca#�`�#:�$�Lj�� ��N-�,�1PAD!��@y(�p�$��A8��`��Է�#�36�@N3�;!0�n��,�];� 0��#��#��#�,�n���<un���4��[;!�b���4��a 5J,@� ���,C #�`�1E�$� ���,�@#�`�2e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�,E�$� ���,�@#�`�-e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�''E�$� ���,�@#�`�'(e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�'"E�$� ���,�@#�`�'#e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |R�,�1bP |R�,�1PAD!��@y(�p�$��A8��0�c�`���4��#�36�`N3Զ�#�� �m��,Kn���<��#�,��#��Ǝ@��X<�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |�O�,�1bP |�O�,�1PAD!��@y(�p�$��A8��0�c�`���4��#�36�`N3Զ�#�� �m��,Kn���<��#�,��#��Ǝ@��X<�!�R�a � �X�@v���@0�@X:!8Ma � �T�@v���@0�@X:!8Ma � �`�@v���@0�@X:!8Ma ���� ��; A�@��0T�b�0 !I��@��a ���� � ; A�@��0T�b�0 !I��@��a ���� ��: A�@��0T�b�0 !I��@��a ���� � : A�@��0T�b�0 !I��@��a ���� ��9 A�@��0T�b�0 !I��@��a ���� � 9 A�@��0T�b�0 !I��@��a ���� ��8 A�@��0T�b�0 !I��@��a ���� � 8 A�@��0T�b�0 !I��@��a ���� ��/ A�@��0T�b�0 !I��@��a ���� � / A�@��0T�b�0 !I��@��a ���� ��. A�@��0T�b�0 !I��@��a ���� � . A�@��0T�b�0 !I��@��a ���� ��- A�@��0T�b�0 !I��@��a ���� � - A�@��0T�b�0 !I��@��a ���� ��, A�@��0T�b�0 !I��@��a ���� � , A�@��0T�b�0 !I��@��a ���� ��+ A�@��0T�b�0 !I��@��a ���� � + A�@��0T�b�0 !I��@��a ���� ��* A�@��0T�b�0 !I��@��a ���� � * A�@��0T�b�0 !I��@��a ���� ��) A�@��0T�b�0 !I��@��a ���� � ) A�@��0T�b�0 !I��@��a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� ,'4A�@��0T�b�0 !I��p�a��, a ���� ,%4A�@��0T�b�0 !I��p�a��, a ���� ,#4A�@��0T�b�0 !I��p�a��, a ���� ,!4A�@��0T�b�0 !I��p�a��, a ���� ��� B�A8��0T�b�0 !I��p�a��, a ���� �I� B�A8��0T�b�0 !I��p�a��, a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a �ȈA� ������@NS�9�D�`��, a �ȈA� � ����@NS�9�D�`��, a �ȈA� ���� ����@�@ ��0�c���4��#��T��#��T��#OD ��@��a �ȈA� � �� ����@�@ ��0�c���4��#��T��#��T��#OD ��@��a ��A� �J��v�0<Sa ��A� ����v�0<Sa ��A� �J��v�0<Sa ��A� ����v�0<Sa ��A� �J��v�0<Sa ���d�@v�<a ���d�@v�<a ���d�@v�<a ���d�@v�<a ���p�@v�pD� �a ���p�@v�pD� �a ���p�@v�pD� �a ���p�@v�pD� �a A, ��\`d�`�n@�������`tdld{@�;�;#��`�*��A8v�0<Sa A, d�\`��=�C8�<��<�C;�A=������}�l�#��`P ��A8v�pD� �a ���� ��� B�A8��`8E!��# )��@�Da ��A� ���v� a ���� ������0�d�2a ��A� ���v�@0��a �pCPa0bp �r6�� Ap�A8��@<1�9��a A,@ � ������ � �B0����@<1�9��a �pCPa0bp �r6C� Ap�A8��@<1�9��a A,@� ������ � �B0����@<1�9��a A, 4�\W ��8�C:�C9�C8��:��8́���} #��` a A,@�& !P�\Î$���M���&@�@ ��PX�0�� 8��# ұX:�!EB 4��# Y;� Q��# )a A,@�& !P�\Î$���M���&@�@ ��PX�0֎PHT�#��pH�P a�����#ұ���# �9��a A,@�& !P�܈A� Њ� �a� �A8 ��PX�0�0H�b�CD��P �2v�@0��X;� Qa A,@�& !P�܈A� Њ� �a� �A8 ��PX�0֎PHT�#�PH��#��0T@d��@,`�H a A,@�& !P�\Î$���M���&@�@ ��PX�0�� 8��# ұ:�P��#�L��# )֎0HTa A,@�& !P�\Î$���M���&@�@ ��PX�0֎PHT�#��@8���;B!��:�P��#�L��# )a A,@�O6!P\Ď$����B$H0�� ��PX�0� 8��# ұ:�P��# �& )v�@0���;� Qa A,@�O6!P\Ď$����B$H0�� ��PX�0�PHT�#�@8���;B!��:�P��# )���,@C���a #A,@�& !P�\Î�A~� 2b� ��6J�0�#�`�+`d��PX�0�� 8��# ұX:�!EB 4��#�,�m�CD֎0HT`�H��#�,a A,@�& !P�܈A� �G�# �`@+g��!�&��A� ���� ��PX�0&�`��Է�# ұ:�P��#�L��# )֎0HT`��, a "A,@�& !P�\Î�A~� 2b� ��6 �0�#�`�+`d��PX�0�� 8��# ұ�<�!�R߆�0T@d��@,`�H��# <!�a #A,@�O6!P\Ď�A~�L2b� ��6K$�hB����M�A8��PX�0� 8��# ұ=�!�R߆�0T@d��4� H��# )�0HT`��, a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0&�PHT�#��P8��܆�`H��#��#(��D�D-Sm��t,>b�H��#R$�@C�=�!Q���F�@8��<BHLDH�2:�Pa MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b� 1!Q��#6�pH��#>b��D>R�a FA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�PHT�#���L��#ұ��m��t,>b�H��#�Hm� 1!Q�d�CD��P �2a HA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ���<�HLDH�2���# �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�PHT�#��P8��܆�`H��#��#(��D�D-Sm��t,>b�H��#�Hm�����#$��D�D-��# Y:B1�a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�pHT�#>b�����#���H��#��X<HLDH�2�>b�CD��P �2v�@0��=��D>�#6�pH��#>b� 1!Q��#v��HT�#��a JA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�PHT�#��P8��ܖ�`H��#��#(��D�D-Sm��t,>b�H��# �& )��`HT�#��#$��D�D-��#N�#��0T@a MA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�pHT�#>b�����#���H��#���<HLDH�2�>b�CDv�@0��X:� a�b�����X<�HLDH�2���#ұ���>"Q���>a MA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`�'O`d��PX�0���L��#����9��b�����X>��D>�#��#R$�@C�="Q���Hm��t,>�#��#$��D�D-��# �<�!���a GA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ~�E�@��PX�0���L��#����9��b��D>�#��# ұ�������L��0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`�'O`d��PX�0���L��#����9��b������="Q���Hm��t,>�#��#N�#>r<BHLDH�2:�P��#�L��#ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<�zsy��`n v@`�dl@q�ld {p�<�A��#��`�>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ~�F�@��PX�0&���L��#����9��b��4� H��#N�#>b�����ܖ��H��#>b[<BHLDH�2>"Q���Hm�CDF�pH��#>a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#���L>b��D>R�a PA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0v��HT�#�����#R$�@C�<B"�����<BHLDH�2���=�D>�#>b�CDv�@0���<B"Q�����X>B�D>r���>�"���>�#���L���a HA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ���<�HLDH�2���# �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0f��HT�#�����#$ұ������#4��D�D-�����# Y:B1��9��b��D>�#>b��t,>b���X<�HLDH�2�>�#a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�pHT�#>b�����#���H��#��X<HLDH�2�>b�CD��P �2v�@0��=��D>�#6�pH��#>b� 1!Q��#v��HT�#��a PA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0v��HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d��@,`�H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a MA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�pHT�#>b�����#���H��#���<HLDH�2�>b�CDv�@0��X:� a�b�����=�!�����#,��D�D-��>"Q���>a PA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d�H��# �& )6��HT�#>�#���8���>�#���H��#�����#8��D�D-S�#>a A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��# �Y;�HLDH�2�掠�L��#��T5n���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������0n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������0n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������pn0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������pnPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������pn0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������pn0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me��_�O�H#�d���4UM<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������pnPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������pnPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-o� 1!Q˴<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������pn`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������pn`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#��T掠�L��# �Y;�HLDH�2��`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!��@NSY;�HLDH�2�掠�L��#(��D�D-�n���4U�[<�!8MU󶎐�Lv�0<Sd��_�O�H#�d��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2���������4M掠�L��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!F�������4MƎ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������0n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������0n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,��\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,T� �7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_�_�H#�d���4�m�=B���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2���������4M掠�L��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,D� 8W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m=B���>�HD4�=B���>�HD4a 2A,� 8�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� 8�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,D� !8�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� )8�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#��`�2��A8v�0<Sa A,$�\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#��`3��A8v�0<Sa 2A,4� 58�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� A8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� M8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,��\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,T� �7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,D� 8W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!F�������4MƎ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� 8�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� 8�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,D� !8�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� )8�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#��`�2��A8v�0<Sa A,$�\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#��`3��A8v�0<Sa 2A,4� 58�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� A8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� M8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#��`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#��`01��� ��#�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#��`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#��`01��� ��#�c��t �a ���� �G+A�@v�@0��:BQ Ea ���� �G+A�@��PT�Bv�@0��a ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@��PT�Bv�@0��a ��A� �G)#�`�0�v�@0��X:!�b�E,a ��A� ��(#�`�:�0�v�@0��X:!�b�E,a ���� Ȏ( �hB�&�İQ�C8��@<1�9��b�E,a ���� Ȏ( �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ��A� �)#�` ;�@� 0� ��@�@��@<1�9��b��,��#�Pa ��A� � )#�``;�@� 0� ��@�@��@<1�9��b�E,a��, a A, ��\U�C8��;�;�C9�������A #��`�*���@v� 4a ���q� �� B�A8��0T�b�0 !I��p�a��, q l2"�\�3�E<�^�3��>�`�3�I�b�486M�d�4XFX�f�5x�Z�h�5��]�j�5�6i�l�6�Fl�n�6��n�p�6�y�r�787}�t�7XG��v�8x���x�8����z�8�7��|�9�G��~�9�7����:@����:8�����:X�����;x0����;�@����;�0Ƀ��<��̃��=�ۃ��>8`ꃔ�?XP����?x�����@�����@�����A�0(���B�09���D�I���D8�X���EX�_���Fxo���G��~���H�Џ���I�𨄮�J�ૄ��J�����L8 ؄��Mh ߄��M��脼�N� ���N(����Nh ���N�����N� ����O�����OH ����O������O�0����O�����PHP ���P�� ���P�� ���P���PH����Q����Q�����Q( ���QH(����Q�(0���R�(�(���R)@*���RH)�+���R�)@-���R�)�.���R*P8���SH*�9���S�*p;���S�*0=���S+�>���SH+0H���T�+�I���T�+0K���T,�L���TH,�N���T�,X���U�,�Y���U- [���UH-�\���U�-P^���U�-�_���V.`i���VH.�j���V�.`l���V�.�m���V/�o���W(/`y���Wh/�}���X�/`����X�/����X�/�����X�/@����Y(8 ����YH8�����Y�8@����Z�8�����Z�8`����Z�8����Z9�����[89�����[x9`����[�9�����[�9`ȅ��\:@ʅ��\X: ̅��\�:΅��\�:�υ��];�م��]X;�ۅ��]�;�݅��]�;�߅��^<����^X<`���_�<�����_�=@ ���`8> ���a�>)���bx? 8���c�?�9���c�?P;���cH0=���cHH?���d�H�H���d�H�J���dI�L���dHI�N���d�IpX���e�IPZ���eJ0\���eHJ^���exJh���f�J0j���f�J0l���fKn���fHK�o���g�K�y���g�K�{���gL�}���gHLp���h�LP����h�L0����hM����hHM�����h�MИ���i�M�����iN�����iHN�����i�N�����j�NЪ���jOЬ���jHO�����j�O�����k�Op����kXP����kHX0����k�XȆ��l�X�Ɇ��lY�ˆ��lHY�͆��l�Y�φ��m�Ypن��mZ@ۆ��mHZ�݆��m�Z�߆��n�Z�膮�n[Pꆱ�n([p놳�nH[�솵�nh[�톷�n�[�o�[P����o�[�����o(\@����oX\p����px\� ���p�\� ���p�\����q�\`���q]���rH]0+���rh]�/���s�]�>���t�]X���u�]pi���v�] {���x^����y(^p����zH^P����{h^ʇ��|�^�ۇ��~�^�����^������^����_� ��Ҁ(_�����H_�����h_.�����_0=�����_�I�����_@M����_ Z���h�i���(h y��ՇHhP�����hh������h����މ�h�������h���̊�hp�����i����ϋ(i����̌Hi������hi ������i������i0������i������i� ����j����(j@+��ϒHj�.����hj�=�����j�J��Ô�j�M�����j`Y�����j�\����k�l����(k�{���Hk����hkЏ�����k ���͙�k���͚�kЯ�����k�����l0�����(l����ɝHl������hlp�����l�������lP���ߟ�l�������l�����m�����(m.����Hm�:��ǣhm>�����m�J�����m�Z����m�i����m y����n�|����(n�����Hn������hnp�����nP������n������n�������n0�����o�����(o �����Ho�����ho �����op ����o ����o�)�����o�-����x@=����(x`J��ĴHx@N����hx Z�����x�]�����xPn�����x~�����x������y���͹(y������Hy�����hy@������y�������y����ؽ�y`������y�����zP����(z`����Hzp ����hzp�����z������z�.�����zP=�����z@J����{@N����({`[����H{�j����h{Py�����{������{������{�������{������|������(|������H|������h|0������|�������|�������|�������|������}������(}� ����H}�����h}@+�����}@/�����}�=�����}�J�����}�N����~�Z����(~�^����H~pn����h~ }�����~Ћ�����~�������~�������~����� �����(п����H������h�������0������������ ������0������0 ����(������H�`(����h�/������<������H����Ȉ M�����`\�����k����(��y����H��}����h�p�������`�������������؉`�����������(�������X�p�������������Ȋй�����������������(�@�] �v8threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_72_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z16__isGridConstantPKvllvm.nvvm.isspacep.grid_const_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z31__cvta_generic_to_grid_constantPKv_Z31__cvta_grid_constant_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj_Z16__match_any_syncjjllvm.nvvm.match.any.sync.i32_Z16__match_any_syncji_Z16__match_any_syncjmllvm.nvvm.match.any.sync.i64_Z16__match_any_syncjl_Z16__match_any_syncjy_Z16__match_any_syncjx_Z16__match_any_syncjf__float_as_uint_Z16__match_any_syncjd__double_as_longlong_Z16__match_all_syncjjPillvm.nvvm.match.all.sync.i32_Z16__match_all_syncjiPi_Z16__match_all_syncjmPillvm.nvvm.match.all.sync.i64_Z16__match_all_syncjlPi_Z16__match_all_syncjyPi_Z16__match_all_syncjxPi_Z16__match_all_syncjfPi_Z16__match_all_syncjdPi_Z11__nanosleepj_Z9atomicCASPttt__usAtomicCAS7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! �y !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQh� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@��(�@ �C� "b��H�@( ��� Cb��h�p������P@ �`��n���@�@���0�@��0�����P�l(������@������ �����!�!�����A����!܁ʁ� e������ �`��n���@�@���0�@��0�����P�l������@���� ��ށ���a~��!�a�������@H ������@I�`� �A&A1A� CP��@&Aq$��@� EP�2� Da& ASL� �3!�&�!h&�4A� B�L  Q&ӄAB� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��c�)��� �Q@A�����F�"J�|J8��FE��i�(a��l$P@Aʠ�2�i�(a�)�" PP4(���8F�"J�|�� P@A!֠� ��k�)��ɧ��n4P@�p� (�7����&_8�GP@A)⠀ ( 9����&� �APP :(�� ��9�i�(a�É�w�;(�s�)��ɧ�É�wa�;��k�)��ɗ'�l$�qG�����i�(a�)�p��F�w�!�;� A����&_:�h��p�w��; 9G�"J�|J:�h��p�w�;�F�"J�|�p� G�w�qG)��;�EΑ��&��'�pD�q�w���;��r�i�(a�f�Q@ �"9F�"J�| i�a��[�)���G��F���K����&�B��F�! Mn���&i� @!8��B�'�HSD ��4��R�@�#M%L>�4��R�@�#M%L��4F��p���5�Q��S��5 (�*�*�HSD ��8�a#��Њ�+�HSD �O-Nc�H0��2�b��1�Q��/Nc�h0� 1�@�\#M%L>�8�q�� (�-`�r�4E�0���8" 0�J��`�r�4E�0���4� 0��R�b�@��\#M%L~�8�T���"� s�4E�0������_~)�0��B�\#M%L~�8�t��_~)�1��� s�4E�0�����_~��R$��/��B�$M%L��4��4F������E�Q��S����5 (�34ISD ��8��8�a#�� ��4ISD �O-Nc,Nc�H0��2Tc�d�A�Q��/Nc,Nc�h0� ��@�\$M%L>�8��8�q�� (�6`qs�4E�0�����8" 0�J�`}s�4E�0���4��4� 0��R�c�@� �#M%L��P�B�( ��C�#M%L��P�B�H ��2�C9��9�Q��,čr�!��C9��9�Q��,�r�!��R�C9�C��x @����)PAtO���)��>E0����B��r(�2���/4P~�*� �D���_"����/ Ce��ȡB���/ DE0�������/DQ!��%��Ȣ2��/�Q�!�Ҩ �CqTr~!�<*�@ � ���KB�Ie0�ȤBЀJE��R�@,��r�!r��C9S!�!�H�2@DS ���C8�� ��@��S�� ��E䔁�ȡ��TT����*�PRE�Z� W5e�(�S�AU H�b<QU�_�Ȫ"�aU 0H�R�9@\��ȫ"PP�Ew��h,*�e�EfQE�-J��(�k[�Hq��"K�`I\$�R�P袺H�"Hs�Eh �h/��t�E~Q E0 �)B#�a�I21�#R�@Jb�US�j�Ɗ�KB�X��"�a�0�dD%S�d,���"��iV�+0�8+�P@��� �� ��p��he���2��2\�VdZ�X�B� W���V�+ⲄX+�t�B��ኻ�!��p�^h�le��/:��2\X d[��­ W� �V�+#�x+��UC��ኄ~!��p�P�pe�b�a��2\aY2d\�� B� `)W���+�C�P��+�S@� P��+�S@�~Q��+��iW�;ĺ��n ` `� �a�"��P� ���`�yE �J��E����E��;��Z�!��;�0�[D_ȋ��+B{t~F0��"�w�W������^_�_��,�|�рE �0*��%FA?�(A#��K��4�/���K��49�!��H�2\QDa!�( ��b\�aX�+ֺ�ҰW�u�w�A⊸�<,�t����.  q�^@$㊾��B\�w�Ÿb�;��R�W�b1�H �\,��`�X�+&����WX��/��B4���!�l,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �!��0;��q � �e�p�c0 � ��`��q�a0�($r�8B1�`��`� @���\0�Q  ��L.)��'����v@~� �a��@;����8�` �|�q�b0�(�r�8R1�`$v�`� @�ڿ\0�U  ��b� ����@;�� r�8Z1�`d�A.�+�~5��x�` ���`� @������v@��r�c0���Y@�r  ��x@ �a��@;�qd9�1�`T��+�,�FPp��` �P, �`� @��I�����v@�)��q�b0�hOW0�[  ���� Ɓ��@;��\�8r1�`TƂ+�.��Yp���` �Ph �`� @�zq�����v@�.��q�b0�h�W0�_  ��� ���@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��_+0D*Y��H4K@�@��l �0"�-�C��%"v`�d���$ �З���!��S=�0Dja��H=LD�@�ɍ��0"�1!�C�X&��`�4�Ą$ �왘V�!RJ�K�0D�i�� �HjM<4@�)� �&"�6�C��&�� `�d�D� ����!҉RY0D�q�A �HhN@k@� � �-"�:�C�\'"� `���t �������!��S_0D { �HqOD�@�I� �4"�>1�C��'�� `��� �\��f��!��m0D�â� �H�XX�@�I �7"�cq�C��,"� `���� �䲘���!Ri�{0D����H�Y �@��= )>"�g�C$-�� `��� �ƴ`���!қ�|0D�ӂ��H�Z �@�)V g>"�j��C�u-�� `���3 �J�@���!R��|0D��"��Hl[L�@��o�h>"�n1�C��-�� `��4 �B�p���!� �|0D��™�Hm\@�@��� g>"�r�C�].�� `���E5 �F�����!�M�|0DZ납�Hw]0�@�i� �>"�v��C��.�� `��ޅs ��p���!R��}0D��b��H>^(�@� ͋e?"�y��C$>/�� `�tꅲ@ �b�`���!R�I~0D2����H�^ �@�I� f?"�|��C��/�� `����@ ���H���!R��~0D��"��Hy_ �@�)�$?"�~��C$�/�� `���ű@ �ĿH���!���~0D�����H�_�@�����?"��q�C�4�� `�$��" �r� B��!R�0D*C��Hmh�@�I��?"��a�C�P4�� `���F�@ �\�@F��!�-Ĉ0D�E)�H�h(%@�� �D"ѣ��C�~4�� `�D��@ �P�H���!RL�0D�I#�H`i#@��, EE"��Q�C$�4�� `����@ ���XX��!�j�0D�MC)�H�i%@� < �?"��Q�C��4�� `�D��@ ���@���!��0D*Q��H-j�@�IF��?"�A�C�5�� `�T�F�@ ���@���!���0D�SC�H�j#@��T��?"��A�C$Y5�� `���F�@ �~�@���!ҹ�0DbW#��H�j�@�i_��D"��q�C��5 `����"@ ���@���!R��0Dr[#��Hwk�@��o �?"��Q�C$�5�� `�4���@ �r�H���!���0DB_#��H�k�@��~��?"��a�C$6� `�Æ1"@ �l�@���!��0Dc���Hjl�@�ɍ �?"ٱQ�C�=6�� `�T���@ �X�P���!�-�0D�e��H�l$#@�i� gD"����C��6� `��ӆ2"@ ���h`��!\�0D�k#��H�m�@�ɴ EF"��q�C��6 `�$�"#@ ���H���!�|�0D�o��H!n�@��čDF"��a�C�7 `����!#@ ���h���!Ҝ�0D�s#�H�n#@�iՍ�F"ѺA�C$\7� `��F1"@ ���HF��!һň0D�w#��H�n�@�i��?"��a�C$�7�� `����@ ���H���!���0D�{#��Hyo�@��� �F"����C$�7 `�d��a#@ ���0���!���0D����H�o �@����G"��1�C�<�� `����@ �d�0���!�0D�����Hbx 8@�� �?"����C�R<�� `�t���@ ���P���!�;�0D��c��H!y �@�)%��?"���C��<�� `���@ ���H���!�_�0D*ͣ��H�y <@�I7��G"��A�C��<�� `�4� ���@���!҈�0DB��H0z`@��FL"�聀 C$3=0 `��& ���@���!���0D2��H�z <@��V�G�"���C$q= `���@ ���@���!��H|0D���H&{`@�ieL"��a� C��=0 `��& ���@���!R��0D���H�{ `@�)udD"���C��= `�Ի�# ���@t��!R���0D�߃ �H(|<b@��FL�"��� C$9>1 `��G$& �d�h���!�/��0D�� �H�|Dd@�ɥ��L�"��� C$�>1 `�d��#& �J�`���!Rl��0D� �H�}<b@�i�FL�"��� C$?1 `�$��#& ���`���!R���0Db�� �H�~<b@���FL�"��� C��?1 `���#& �t�X���!R���0D��� �H�<b@���FL�"��- ���` �H�@ C�D���!� "��0DC�1 �Hp�Df@�)��L�"�"� C$pD4 `��ȡ&0 ��)���!�>"���0D I�` �H&�`n@��'N�"�%�� C$�D8 `�d�'@ ������!�m" �0D�M$� �H�$<@�)>��G�"�'�� C$E `���H�#@ ��Ix��!R�" �0D�S��H��$<@��V��G�"�+��C�tE `�$��G' �`y���!��"�~0Dr[�� �H}�<�@��u��N"�/�C��E�� `����@ �v����!�#��0D:e�� �H��8x@�i�O�"�3�� C�F<; `���ȃ'@ ��y���!�^#�0DRm�� �H��pz@����O�"�8�� C�G> `����'@ ������!Ҫ#�0D�u�� �H�<|@� ߑ�O�"�<�� C��G>? `�D�� C$�G2 `�4�C&@ ��y���!� &��0D���1�Hk�8f@�)��L"�bҘ C�ZL3 `�4� c&@ ��1y���!�?&��0DZ��1�H:�8f@� -��L"�e� C��L3 `�D��c&@ ��3q���!|&��0D���1�H,�8f@�IG�gT"�iŒ C�:M,1 `����$&@ �z5����!�&��0D:���H=�Hb@��m�KL"�n2� C��M,3 `��� e&@ �F8����!�'��0Dz��"�H��Hd@�間�L"�s2� C��N�Q `�tӉ4*@ ��:�F��!h'Ө0D����H�\b@� �KL"�xr� C�6O.1 `�D��$&@ �n=����!һ'��0D���H:�Lb@���LL"�~B� C��O.3 `��Ie&@ �JP����!R*��0D�C�"�H��Ld@���L"գB� C��T,1 `����$&@ ��R����!j*��0D�M�2�H�Pf@��D��L"�R� C�8U,1 `�t��$&@ �rU����!�*��0DY�2�H9�Pf@��m��L"��R� C��U,1 `����$&@ �BX����!+��0DZc�2�H��Pf@�����L"��R� C��V,1 `�tӊ$&@ ��Z����!h+��0D�m�2�H�Pf@�����L"ѸR� C�4W,1 `���$&@ �b]����!�+��0D�w��H1�Hb@�i�KL"�2� C��W���!�+�@���l `��˴0D ��Z"��"-@ �Tq��H�L C�z\.4 `�Ē �&@ ��r����!^.�0Dj���H�Hb@��>�KL"��2� C�],3 `�T��d&@ �Pu����!ү.��0D����H)�Hb@�ig�KL"��2� C��],3 `��� e&@ ��w����!� /��0D���Hp�Db@�)�KL"��"� C�t^*3 `��ϋd&@ �`z����!�Y/��0D���H��Db@��KL"��"� C�_*3 `����d&@ ��|����!R�/��0D����H�Hb@�)�KL"��2� C��_,3 `���d&@ �h����!��/��0D����H5�Hb@�� �KL"�!3� C�Xd,3 `�t� e&@ �������!�L2��0D:KF)�Hq� l@�)/�T "�&3� C$�d(5�`�d�L�&@ �N����!��2�0DRS&��H{�d�@��V�("�+��  C$e�8 `�� v*@4 �Җy���!�2ة�0D�]��H��t�@����/U"�1� C$Qf� U"�3� C��f�Z `���LW  ����j��!�n3\-0D�o� R��!�3dP  �@�Y���!Ҫ3�|�0D�ufZ�H��X���)��U"�<�� C��g�U `�D�̵*@< �v�����!��3�0D���H.�@�@���)>"�aI �D��d��!R-6�0Db�f��H��X�@��&KV"�e�� C��l0Y `����%+ �䳹d��!R�6��0D���� �Hj�8�@� O�V"�j�� C$sm.[ `�ԯͤ+ �`��t��!��6��0D�����H��`�@��|LW"�os� C$n.] `�����+ �@��x��!�-7�0Dr����H%�L�@� ��IW"�uc� C��n,] `�t� �+ �޻�t��!҉7��0D�����Hu�,�@� ԛ�W"�z�� C$[op `���2.D �ؽY �H��,�@�I��\"�|� C$�o"v `�4�M�. �H�y���!��7O�0D����H��,���)�e\�"���@ �n�Y|��!�:Ѿ0D�C'��H��H!@���d"��� C$|t � `�����2 �|�Y^��!RZ:K�0D�K'��H��D7@��6Ig"���� C$�t_ `��.D �X�a���!�:̸0D"S��"���� C$>u"s `�ԪN�. �|Ց���!�:һ0DY��H2�@�@�Il� _"ݭÀ C��u�q@`���0D�]���H��H�@�)�_"��3� C$v&� `��Nt2 �DىT��!�,;W�0DRg�y�H��01@�I��f"Ѵ#� C$�v&� `����+ �J�a|��!Rl; �0D�m�"�H��0�@��� `���+ �Z܉���!��;Q�0DzsGb�H��H�@�i�H^"��� C�yw*| `���.H �h�a� �!�; @����W"�#� C$�w$ `����2 ��ߙH��!�>��0D��'R�Hd�\-@�i�e"���� C�Y|$� `�T��t3 ���t��!�J>��0D�ɇ��Hb�0�@��-\�"��Ì C$�|��!�l>��0D��'2�H��D�@� D�]"��#� C$2} y `�D�T/ �H�����!R�> � 0D*ׇ$�H��0C�~}_ `�����/ �v�����!R�>S�0D�g"�H��D'@��|�He"��s� C$~�� `���3 ����h��!�?��0DB�g��H��0�@���W"��À C�~p `���3.D �n�a �Hc�0�@�魟�\"��� C��~$v `�4ޏ�. �������!R�?P�0D����Hj�0�����f\�"���@ �\�a|��!��?Ҿ0Db�G��H��L!@�)柉d"��� C��"� `�d���2 �z�a^��!R�?L�0D��G��H'I7@�)�Ig"�!�� C$<�_ `�D�.D �`b���!/B̸0DBG��"�#�� C$��"s `��P�. ������!]Bһ0D2M��H� A�@��<� _"�'Ā C���q@`�4�0D�Q���Hk I�@��O!�_"�*4� C$q�&� `�T�Pt2 �L�T��!��BW�0Dr[�y�Hz 11@��t!�f"�.$� C$��&� `�Կ�3 �Rbx��!R C��00D c��&�Hm 1`��)�!Fl"�2�� C�X�$� `�4ΐd6 ������!JC��0D�i(b�Hl En@���! n"�6�� C�߆��`���#6 ��bx��!҈C��0D�qh��HiQv@���! o"�:$� C�q�$� `�T��7 �Zb@��!R�C��0D*{h"�HxM�@�i�! u"�>�� C���� `�t��3L �F0b|� �!� F �00D����Hg1<@�i#�l"�b$� C�[�&� `���Ѥ6 ��1����!�KF��0D��Ȃ�Hu1>�)4#l�"�fĈ C�܌� `�T��$7 ��3����!ҊF��0D�ш��HsIz@��T#�o"�j�� C�w�� `���#: �N6�H��!��F��0DjۈB�H�1<@��u#�g"�n�� C���``��6L ��7b���!R G �0D��H"�HgIf@�)�� m"�r4� C�_�"� `��Q�6 �B:����!�MG��@0D�(�Ho1b@�i�#�g"�v4� C$ݎ&� `���e7 �B<����!R�G��0D:�H��Hya~@�)�#t"�zĈC�t�&� `����d: �^>�P��!��G �0Dz����H{1>����#�g�"�~Ā C�ߏ� `����3 ��?����!R J��0D�AiB�Hn(Mj@�)��m"ɢ� C�q�,� `����3P �JRb� �!RLJ��0D�I���Hi)Mr@��/��n"��D� C��(� `�t���7 �RT����!ҎJ��0D�S��H*1�@�iU��t"��4�C�x�(� `�T��5 �vV����!��J�|0DB]��H�+Y�@��~%.>��"Űd�C�3�,� `����:@@ �rY�T��!�;K��0D*i�R�H;-Y�@�)��'?�"��d�C$ۖ(< `���; �D\�d�!��K�0D�s ��H�.q��I�%�v"����C$��0� `�$��; �T_�t��!��KЪ0D� �*�H"85�@����%vY $2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�Bb�C �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �alignF&0��a0��a0�p�0���0�0�0��a0�`�0��0�0�0���0��a0���0���0���0�0�0��a0�`�0���0� �0���0���0�P�0���0�@"1�p#1�&1�0'1��)1�+1��x1��a0��y1��~1��1���1���1���1���1�p.�5��.�5��.�5�/�5�0/�5�`/�5��/�5��/�5��/�5� 2�5�P2 6��2!6��2"6��2#6�P3&6��3'6��3(6�p.06��.16��.26�/36�0/46�`/56��/66��/;6��/<6� 2=6�P2>6��2?6��2`6��2a6�P3d6��3e6��3f6�p.n6��.o6��.p6�/q6�0/r6�`/s6��/t6��/y6��/z6� 2{6�P2|6��2}6��2~6��26�P3�6��3�6��3�6�p.�6��.�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�P3�6��3�6��3�6�p.�6��.�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�P3�6��3�6��3 7�p.(7��.)7��.*7�/+7�0/,7�`/-7��/.7��/37��/47� 257�P267��277��287��297�P3<7��3=7��3>7�P6f7��a0�p6g7��a0��6h7��6i7��a0��6j7��6k7��a0�7l7�07q7�P7r7�p7s7��7t7��7u7��7v7��7w7�P:z7�p:{7��:|7�P6�7�p6�7��6�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�P:�7�p:�7��:�7�P6�7�p6�7��6�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�P:�7�p:�7��:�7�P6 � �M#i#���ڌ`0��6$� �M #qc���ܬ`0�P7,� �M #y���޼`0��70� �M #�C�����`0��:6� � 3 E �0�1À� C3 Jp�0,3��� �03 O��0@A4� � �D3 T�0TA4�`� �03 X�0dA4à� �D3 \�0tA4��� ��� C`0� �0�A3 d�� C`0�`�0�A3 h3 i3 j3 k03 l03 mD3 nD3 o3 p3 q3 r03 s03 tD3 uD3 v03 wD3 xD3 y3 z3 {3 |03 }03 ~D3 D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 03 !03 "D3 #D3 $3 %3 &3 '03 (03 )D3 *D3 +03 ,D3 -D3 .�� L11� AL�0�D@3 5�� �M71À�M�0�D�3 :�� �N11��M�0�D@3 >�� �O71�M�0�Ep3 b�� �X/1�@AL�0�E3 f�� �Y41À�M�0�Ep3 j�� �Z11��AL�0�E@3 n�� �[71��M�0�E@3 r�� �\71�@�K�0�E3 v�� �]41ÀM�0�Ep3 z�� �^/1��AL�0�E3 ~�� �_41��M�0�Fp3 ��� �h71�@�M�0�F�3 ��� �i11ÀM�0�F@3 ��� �j71���K�0�F3 ��� �k41�M�0�Fp3 ��� �l41�@�M�0�Fp�3������������������������������������������������������������������������������������������������������������������'b b b b b b b b b b b b�n�n�n�n�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�2��t������\�������F j#!7;�6�07�7�0��7��QT�6n7rC7v�7z�7~<�C<ƃ<��<�=�C=փ=��=�>�C>�>��>�?�C?��?��?�DBDDF�DJ�DNERDEV�EZ�E^FbDFf�Fj�FnGrDGv�Gz�G~L�DLƄL��L�M�DMքM��M�N�DN�N��N�O�DO��O��O�TBETF�TJ�TNUREUV�UZ�U^VbEVf�Vj�VnWrEWv�Wz�W~\�E\ƅ\��\�]�E]օ]��]�^�E^�^��^�_�E_��_��_�dBFdF�dJ�dNeRFeV�eZ�e^fbFff�fj�fngrFgv�gz�g~� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,�� � �dv�\��������4Ma A,$� � �dv�\��������4Ma A,T� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,D� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,� � ��6C�A8 v�\��`��������4M��������4Ma A,D� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,t� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � �dv�\��������4Ma A,4� � �dv�\��������4Ma A,d� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,D� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,t� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,� � ��6C�A8 v�\��`��������4M��������4Ma A,4� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,d� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � �dv�\��������4Ma A,4� � ��6C�A8 v�\��`��������4M��������4Ma A,d� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,�� � �dv�\��������4Ma A,�� � �dv�\��������4Ma A,$� � ��6C�A8 v�\��`��������4M��������4Ma A,T� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma A,T� � �dv�\��������4Ma A,�� � ��6C�A8 v�\��`��������4M��������4Ma A,�� � �6D0�B�@ v�\��`��dƎ������4M��������4M֎������4Ma A,�� � A�6E0��lCP �Ǝ������4M�������4M��Xv�\��`��d��������4M֎������4Ma Ĉ�� �� �pC`f0��,�0K0 TD�B�@��0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �~Bp�p r2b` ��~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1��`NSٽ&$@#����� & ұX;� ��#$@#������#��Twm���4Ս?� 0��#�,6o�� &�`NS�&��T8m� ��;4n���4�m���4Un���4o���4��#��T5n���4U��9B:BX<!�n���<wn���4�M�=�!8Me�V�@��>�!8Me�a Ĉ�� �G� �pC`f0��,�0K0 TD�B�@��0�c�`�A`���4��#�,a YE,@���#Ez�PF�w@�^pT�x�pr2b` �Q~Bp�p r2b` �~Bp�p2���2B0K T܃p2���2 D0K@ T� �pqQ�*\ �f1��`NSٽ&$@#����� & ұX;� ��#$@#������#��Twm���4Ս?� 0��#�,6o�� &�`NS�&��T8m� ��;4n���4�m���4Un���4o���4��#��T5n���4U��9B:BX<!�n���<wn���4�M�=�!8Me�V�@��>�!8Me�a ���� �G� ˆ�� ć�B�@v�������P�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|ȟ����A|П\p�@�@T� WC��5��`NSٽ& ұX;� ��#��T7n���4խ�?�!8Mu�0�`� ��4��a��D��@̀�;B!8Me<B!8M�[=B!Q}�<B!8M�;!8Me���4U]�=�!8MU㶏`��ܷ &��Txo� ��4U��9B:BX:B X<!�n��, n[`�!˂�6�`NS��#@3Դ�#��T�m���4��[>!�a ���� �Gz ˆ�� ćzB�@v�������`�����#�,>Ra ���� �z A�@v�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|ȟ�@��A|П\p�@�@T� WC��5Ə`NSټ& ұX;� ��#��T7m���4�m`�!8Mu�`��ػ�# @3�`�!8M��6�`NS�&Nd� ��4��?�!�r���@̀�;B!8Me�<B!8M�<B!8M�;!8Me���4U]�=�!8MU�v�`NSպ�#��T5o��tD�m�`�A`��`��tD�&�,�m�� 5m���4�}[>!�a ���� ć� ˆ�� ���B�@v�������P�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�����A|������A|��\p�����A|������A|ğ\p�@�@T� WC��5��`NSٽ�#�,v�`NSٶ& ұX;� ��#��T7n���4խ�?�!8Mu�0�`� ��4��a��D�PNS�&�`NS��#��T��#@3�V�PHGT�Ǝ@NS�<B!8M�=�!8MU�f�`NSո &��T�m� ��4U��9B:BX:B X<!�n��,�}�?�!˂��`����#@3Դ�#��T6a ���� ��~ ˆ�� �B�@v�������`�����#�,>Ra ���� ć~ A�@v�����@��a ZA,@��Ez�PF�w@�^pT�x�PJ����^p�@@��A|���@��A|��\p�@@��A|���@��A|ğ\p�@�@T� WC��5Ə`NSټ& ұX;� ��#��T7m���4�m`�!8Mu�`��ػ�# @3�`�!8M��6�`NS�&��T�n��,˭�;4n���4�m���4Un���4o� �Y=B!Q};!8Me���4U]�=�!8MU�v�`NSպ�#��T5o�`�A`��`��tD�&�,�m�� 5m���4�}[>!�a Ĉ�� �G� ˆ�� ć��pC�f0��,�0K0 TD B�@ ֎@N3;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|̟����A|ԟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������Ƙ0H�b��tDf��������Ǝ0�`���4�m���4Un���4o��,�}[;!8Me���4U]�=�!8MU�v����`��ඥ#� &�,8o�� 5m���4�m�>!�b���4���>�!8Me�֏`NSݸ�#��T�n� ��<��`NSݼ!&��&��T8n� ��`�!8M���@̀�=B!Q}a�!8M��v�`NS��#����`NS�-&��T� a Ĉ�� ć� ˆ�� ����pC�f0��,�0K0 TD B�@ ֎@N3;� 0��#��#��#��#�,��#�,a sE,@���#Uz�P��w@!�^p��x�P�����^p�����A|������A|��\p�����A|������A|ȟ\p�� 7��� ���`�� 7��� ���#@�@T@ WC��A��������Ƙ0H�b��tDf��������Ǝ0�`���4�m���4Un���4o��,�}[;!8Me���4U]�=�!8MU�v����`��ඥ#� &�,8o�� 5m���4�m�>!�b���4���>�!8Me�֏`NSݸ�#��T�n� ��<��`NSݼ!&��&��T8n� ��`�!8M���@̀�=B!Q}a�!8M��v�`NS��#����`NS�-&��T� a � ��A|�^ dv�������0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �� �w�E�9� \p\�����A|��\p\@�@T WC��<Ə`NSټ%& ұX;� ��#��T�m���4Ս`�!8Mu�&�`NSݼ &��Two�� F�`NS�&��T�n� ��;4n���4�m���4Un���4o��tD�m���4��#��Tum���4U�b�!8M��v�`NS崝#��#��#��#��V�`����# �0X`B ý�<B4CM�=�!8Meۆ�`NSٸ�#��Tvn���4��[?!�a A ��A|�W dv�������0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �� �w�E�9� \p\@�@��A|��\p\@�@T WC��<��`NSټ%& ұX;� �&��T7m� ��4�m�`�!8Mu�F�`NSݹ�# @3�a�!8M��v�`NS�!&��T8n� ��;4n���4�m� �,��<B!8M��<B!8M�[=B!Q};!8Me���4U]�=�!8MU�v�`NSպ�#��T5o���4U��9B:BX:B X<!�n�0 �P�p�6�P�PӶ�`NSٴ�#��T�m��,��#��T�a � ��A|�^ dv�������0�`��, a `A,@��Ez�PF�w@�^pT�x�PJ����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|ԟ\p\@�@T WC��<Ə`NSټ%& ұX;� ��#��T�m���4Ս`�!8Mu�&�`NSݼ &��Two�� F�`NS�&��T�n� ��;4n���4�m���4Un���4o��tD�m���4��#��Tum���4U�b�!8M��v�`NS崝#��#��#��#��V�`����# �0X`B ý�<B4CM�=�!8Meۆ�`NSٸ�#��Tvn���4��[?!�a A ��A|�W dv�������0�`��,��a `A,@��Ez�PF�w@�^pT�x�PJ����^p�@@���w��!Ĉ�� �G� �w�E�9� \p\@�@��A|ԟ\p\@�@T WC��<��`NSټ%& ұX;� �&��T7m� ��4�m�`�!8Mu�F�`NSݹ�# @3�a�!8M��v�`NS�!&��T8n� ��;4n���4�m���4Un���4o��tD�m� �,��;!8Me���4U]�=�!8MU�v�`NSպ�#��T5o���4U��9B:BX:B X<!�n�0 �P�p�6�P�PӶ�`NSٴ�#��T�m��,��#��T�a � ��A|�^ 7x`� �� ��@@� d Ǝ0�c�`�A`��`�0 ֎@N3�:!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� �G� �w�E�9� \p\�����A|�\p\� 7��� ������ 7��� ��@ #@�@T� WC��H֏`NSټ5&$@#�����A& ұ�;� �)&$@#������#��T�m� ��4Ս[`�!8Mu떘0�c� ��4��a�!8Mu�ƘP̓�Ǝ0�`� ��4^�a�!8M���@̀�;B!8Me�=B!Q}[<B!8M�[;!8Me���4U]�=�!8MU�6�PNS�`NSἝ#��#��#��#��f�`���-&��Tym� ��4U��>� �=&��Tyo� 0 �n�� 5m� �>�!8Meۖ�`NSٸ�#��Tvn���4���?!�a � ��A|�^ 7x`� �� ��@@� d Ǝ0�c�`�A`��`�0 ֎@N3�:!�a yE,@���#Uz�P��w@!�^p��x�P�����^p������w��!Ȉ�� ć� �w�E�9� \p\�����A|؟\p\� 7��� ������ 7��� ��@ #@�@T� WC��H֏`NSټ5&$@#�����A& ұ�;� �)&$@#������#��T�m� ��4Ս[`�!8Mu떘0�c� ��4��a�!8Mu�ƘP̓�Ǝ0�`� ��4^�a�!8M���@̀�;B!8Me[<B!8M��<B!8Mś=B!Q}[;!8Me���4U]�=�!8MU㶘`NS�!&��T8o�`�A`��`� ��4Uޛ<!�n� �, ��c�!8M�憐0�`� 0 �n�� 5m� �>�!8Meۖ�`NSٸ�#��Tvn���4���?!�a ���� �G� �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��@��a ���� �Gz �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��`���a ���� ć� �p1�����Q�D8 ��0�c�`�A`����#��T��#��T��@��a ���� ��~ �p1�����Q�D8 ��0�c�`�A`���4�n����#��T��`���a bA,@��Uz�P��w@!�^p��x�pr2b` �~Bp�p r2b` ��~Bp�p r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<��`NSٽ &��!& ұ�;� ��#��Twm���4�}`�!8Mu��0�c� ��4���?�!8Mu㦏`��ؼ�# @3�`�!8M��F�`NS�&��T�m� �<4n���4�m���4Un���4o���4��#OD ��=�!8MU�V�`NSպ&��T8o�`�A`��ÿ8&�@HG��a�!8M��v�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �~Bp�p q1b` ��~Bp�p q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<֏`NSٽ!& ұ�;� ��#��T7m� ��4�][`�!8Mu�&�`NSݺ�# �a�!8Mu�`��ظ&��Two�� f�`NS�&��T8n� �<4n���4�m���4Un���4o���4��#��T5m���4Um[:��D����#��T�n���4U��9B:B�:��D��/��#��6�P�s`NSٴ�#�,��`NSٹ�#��T�a bA,@��Uz�P��w@!�^p��x�pr2b` �a~Bp�p r2b` �~Bp�p r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<��`NSٽ &��!& ұ�;� ��#��Twm���4�}`�!8Mu��0�c� ��4���?�!8Mu㦏`��ؼ�# @3�`�!8M��F�`NS�&��T�m� �<4n���4�m���4Un���4o���4��#OD ��=�!8MU�V�`NSպ&��T8o�`�A`��ÿ8&�@HG��a�!8M��v�`NSٴ�#��T�m��,��#��T6a bA,@��Uz�P��w@!�^p��x�pq1b` �a~Bp�p q1b` �~Bp�p q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<֏`NSٽ!& ұ�;� ��#��T7m� ��4�][`�!8Mu�&�`NSݺ�# �a�!8Mu�`��ظ&��Two�� f�`NS�&��T8n� �<4n���4�m���4Un���4o���4��#��T5m���4Um[:��D����#��T�n���4U��9B:B�:��D��/��#��6�P�s`NSٴ�#�,��`NSٹ�#��T�a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v�\��@��a ��A� �G��v�\��@��a ��A� ����v���@��a ��A� ����v� ��#�,a ��A� ���v� ��#�,a ��A� ����v� ��#�,a ��A� ���v� ��#�,a ��A� ����v� ��#�,a ��A� �G��v� ��#�,a ��A� ����v� ��#�,a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� ����v� ��#�,a ��A� �G��v� ��#�,a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� �ǿ�v� ��#�,a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ��A� �G��v� ��#�,a ��A� �ǽ�v� ��#�,a ��A� �G��v� ��#�,a ��A� �Ǽ�v� ��#�,a ��A� �G��v� ��#�,a ��A� �ǻ�v� ��#�,a ��A� �G��v� ��#�,a ���� �� A�@v�����@��a ��A� �G��v� ��#�,a ��A� �ǹ�v� ��#�,a ��A� �G��v���@��a ��A� �Ǹ�v���@��a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ��A� �G��v���@��a ��A� �Ǯ�v���@��a ��A� �G��v���@��a ��A� �ǭ�v���@��a ��A� �G��v���@��a ��A� �Ǭ�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ��A� �G��v���@��a ��A� �Ǫ�v���@��a ��A� �G��v���@��a ��A� �ǩ�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ���� �� A�@v�����@��a ���� �ȟ B�A8v�����0@�c��, a ��A� �Ǟ�v���@��a ��A� �H��v���@��a ��A� �ȝ�v���@��a ��A� �G��v���@��a ��A� �ǜ�v���@��a ��A� �H��v���@��a ��A� �ț�v���@��a ��A� �G��v���@��a ���� �� A�@v�����@��a ���� �Ț B�A8v�������@��a ���� �� A�@v�����@��a ���� ��� A�@v�����@��a ��A� �ǘ�v���@��a ��A� �G��v���@��a ��A� �Ǐ�v���@��a ��A� �G��v���@��a ��A� �ǎ�v���@��a ���� �Ȏ B��@v���@H�Y:!<Sa ���� �H� B��@v���@H�Y:!<Sa ��A� �G��v���@��a ��A� �nj�v���@��a ���� ��� A�@��v�4��@��a ��A� �Nj�v���@��a ��A� �G��v���@��a ���� �� A�@��v�4��@��a ��A� �G��v���@��a ��A� �lj�v���@��a ��A� �G��v���@��a ��A� �Lj�v���@��a ��A� �G��v���@��a ��A� ���v���@��a ��A� �G�v���@��a ������ �H A�@v�����@NS�:!�a � ����� �HB�@v�����@NS�:!�a ���� ć~ A�@v�����@��a ���� ć~ A�@v�����@��a "D,��� �����A|�\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa ���� ��} A�@v�����@��a ���� � } A�@v�����@��a ���� � } A�@v�����@��a ���� � } A�@v�����@��a ���� ��� A�@v�����@��a ���� ��z A�@v�����@��a � ����� �{B�@v�����@NS�:!�a ������ �{ A�@v�����@NS�:!�a ���� �z A�@v�����@��a ���� �z A�@v�����@��a "D,��� �����A|��\`�� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa "D,��� �����A|��\`@� #�`&�u��@�A��A8�`��Է�#��T��#��T��#��Tv���Ǝ@���;BS,�Oa ���� � y A�@v�����@��a ���� ��x A�@v�����@��a ���� ��x A�@v�����@��a ���� ��x A�@v�����@��a ���� �� A�@v�����@��a ���� �Hn A�@v�����@��a � ����� ��nB�@v�����@NS�:!�a ������ ��n A�@v�����@NS�:!�a ���� �Im A�@��0T�b�0 !I��@��a ���� ��l A�@��0T�b�0 !I��@��a ��A#�` &�5���0T�b�0 !I��04�a��, a ��A#�` &�5���0T�b�0 !I��04�a��, a ���� ��k A�@��0T�b�0 !I��@��a ���� �Ik A�@��0T�b�0 !I��@��a ���� ��j A�@��0T�b�0 !I��@��a ���� �Ij A�@��0T�b�0 !I��@��a ���� ��i A�@��0T�b�0 !I��@��a ���� �Ii A�@��0T�b�0 !I��@��a ���� ��h A�@��0T�b�0 !I��@��a ���� �Ih A�@��0T�b�0 !I��@��a ���� ��_ A�@��0T�b�0 !I��@��a ���� �I_ A�@��0T�b�0 !I��@��a ���� ��^ A�@��0T�b�0 !I��@��a ���� �I^ A�@��0T�b�0 !I��@��a ���� ��] A�@��0T�b�0 !I��@��a ���� �I] A�@��0T�b�0 !I��@��a ���� ��\ A�@��0T�b�0 !I��@��a ���� ,r5A�@��0T�b�0 !I��p�a��, a ���� ,p5A�@��0T�b�0 !I��p�a��, a ���� �I[ A�@��0T�b�0 !I��@��a ���� ��Z A�@��0T�b�0 !I��@��a ���� ��Z B�A8��0T�b�0 !I��p�a��, a �ȈA� ��Y� ����@�@ ��0�c���4��#��T��PNS�ƎPNSٖ�@��a �ȈA� �IY� ����@�@ ��0�c���4��#��T��PNS�ƎPNSٖ�@��a ;J,@ �� �� ������a��pC�`0�0���� �IZ%�1K� 7�2F0bp p�V���#�`'j�,�,�1PAD!��@y(�p�$��A8�`��Խ�# ��;B!0OM[=�!8̀�f�`N3��#�,7m�� ��#�,wo���<vm���4��#��#��#��#�,a 9J,@ �� �� ������Q�$� E��,�@#�`�#c���p�Q��,Ca#�`�#d�$�Lj�� �Y-�,�1PAD!��@y(�p�$��A8��`��Է�#�3F�`N3ؼ�#�� �@̳[=�!8�`��`��ص�# ��9B:B�<�!�b��P�S�֎@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#>���p�Q��,Ca#�`�#?�$�Lj�� ��O-�,�1PAD!��@y(�p�$��A8��`��Է�#�36�@N3�;!0�n��,�];� 0��#��#��#�,�n���<un���4��[=�!8�`�֎@��a 9J,@ �� �� ������Q�$� E��,�@#�`�#9���p�Q��,Ca#�`�#:�$�Lj�� ��N-�,�1PAD!��@y(�p�$��A8��`��Է�#�36�@N3�;!0�n��,�];� 0��#��#��#�,�n���<un���4��[;!�b���4��a 5J,@� ���,C #�`�1E�$� ���,�@#�`�2e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�,E�$� ���,�@#�`�-e� � F� ����~�2Kp���~�T2Kp TD!��@� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�''E�$� ���,�@#�`�'(e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 5J,@� ���,C #�`�'"E�$� ���,�@#�`�'#e� � F� �����2Kp����T2Kp TD!��@�� �1K� TP ���0�c�`���4��#�3&�`N3Զ�#�� �m��,Kn���<��#�,��#�춎@��<�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |R�,�1bP |R�,�1PAD!��@y(�p�$��A8��0�c�`���4��#�36�`N3Զ�#�� �m��,Kn���<��#�,��#��Ǝ@��X<�!�R�a 7J,@ �� �� �����S1K� 7x� �����1K� 7�2F0bP |�O�,�1bP |�O�,�1PAD!��@y(�p�$��A8��0�c�`���4��#�36�`N3Զ�#�� �m��,Kn���<��#�,��#��Ǝ@��X<�!�R�a � �X�@v���@0�@X:!8Ma � �T�@v���@0�@X:!8Ma � �`�@v���@0�@X:!8Ma ���� ��; A�@��0T�b�0 !I��@��a ���� � ; A�@��0T�b�0 !I��@��a ���� ��: A�@��0T�b�0 !I��@��a ���� � : A�@��0T�b�0 !I��@��a ���� ��9 A�@��0T�b�0 !I��@��a ���� � 9 A�@��0T�b�0 !I��@��a ���� ��8 A�@��0T�b�0 !I��@��a ���� � 8 A�@��0T�b�0 !I��@��a ���� ��/ A�@��0T�b�0 !I��@��a ���� � / A�@��0T�b�0 !I��@��a ���� ��. A�@��0T�b�0 !I��@��a ���� � . A�@��0T�b�0 !I��@��a ���� ��- A�@��0T�b�0 !I��@��a ���� � - A�@��0T�b�0 !I��@��a ���� ��, A�@��0T�b�0 !I��@��a ���� � , A�@��0T�b�0 !I��@��a ���� ��+ A�@��0T�b�0 !I��@��a ���� � + A�@��0T�b�0 !I��@��a ���� ��* A�@��0T�b�0 !I��@��a ���� � * A�@��0T�b�0 !I��@��a ���� ��) A�@��0T�b�0 !I��@��a ���� � ) A�@��0T�b�0 !I��@��a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ��A#�` &�4���0T�b�0 !I��04�a��, a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� �  A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� �� A�@��0T�b�0 !I��@��a ���� � A�@��0T�b�0 !I��@��a ���� ,'4A�@��0T�b�0 !I��p�a��, a ���� ,%4A�@��0T�b�0 !I��p�a��, a ���� ,#4A�@��0T�b�0 !I��p�a��, a ���� ,!4A�@��0T�b�0 !I��p�a��, a ���� ��� B�A8��0T�b�0 !I��p�a��, a ���� �I� B�A8��0T�b�0 !I��p�a��, a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a ���� ���A�@��0T�b�0 !I��@��a ���� � �A�@��0T�b�0 !I��@��a �ȈA� ������@NS�9�D�`��, a �ȈA� � ����@NS�9�D�`��, a �ȈA� ���� ����@�@ ��0�c���4��#��T��#��T��#OD ��@��a �ȈA� � �� ����@�@ ��0�c���4��#��T��#��T��#OD ��@��a ��A� �J��v�0<Sa ��A� ����v�0<Sa ��A� �J��v�0<Sa ��A� ����v�0<Sa ��A� �J��v�0<Sa ���d�@v�<a ���d�@v�<a ���d�@v�<a ���d�@v�<a ���p�@v�pD� �a ���p�@v�pD� �a ���p�@v�pD� �a ���p�@v�pD� �a A, ��\`d�`�n@�������`tdld{@�;�;#��`�*��A8v�0<Sa A, d�\`��=�C8�<��<�C;�A=������}�l�#��`P ��A8v�pD� �a ���� ��� B�A8��`8E!��# )��@�Da ��A� ���v� a ���� ������0�d�2a ��A� ���v�@0��a �pCPa0bp �r6�� Ap�A8��@<1�9��a A,@ � ������ � �B0����@<1�9��a �pCPa0bp �r6C� Ap�A8��@<1�9��a A,@� ������ � �B0����@<1�9��a A, 4�\W ��8�C:�C9�C8��:��8́���} #��` a A,@�& !P�\Î$���M���&@�@ ��PX�0�� 8��# ұX:�!EB 4��# Y;� Q��# )a A,@�& !P�\Î$���M���&@�@ ��PX�0֎PHT�#��pH�P a�����#ұ���# �9��a A,@�& !P�܈A� Њ� �a� �A8 ��PX�0�0H�b�CD��P �2v�@0��X;� Qa A,@�& !P�܈A� Њ� �a� �A8 ��PX�0֎PHT�#�PH��#��0T@d��@,`�H a A,@�& !P�\Î$���M���&@�@ ��PX�0�� 8��# ұ:�P��#�L��# )֎0HTa A,@�& !P�\Î$���M���&@�@ ��PX�0֎PHT�#��@8���;B!��:�P��#�L��# )a A,@�O6!P\Ď$����B$H0�� ��PX�0� 8��# ұ:�P��# �& )v�@0���;� Qa A,@�O6!P\Ď$����B$H0�� ��PX�0�PHT�#�@8���;B!��:�P��# )���,@C���a #A,@�& !P�\Î�A~� 2b� ��6J�0�#�`�+`d��PX�0�� 8��# ұX:�!EB 4��#�,�m�CD֎0HT`�H��#�,a A,@�& !P�܈A� �G�# �`@+g��!�&��A� ���� ��PX�0&�`��Է�# ұ:�P��#�L��# )֎0HT`��, a "A,@�& !P�\Î�A~� 2b� ��6 �0�#�`�+`d��PX�0�� 8��# ұ�<�!�R߆�0T@d��@,`�H��# <!�a #A,@�O6!P\Ď�A~�L2b� ��6K$�hB����M�A8��PX�0� 8��# ұ=�!�R߆�0T@d��4� H��# )�0HT`��, a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0&�PHT�#��P8��܆�`H��#��#(��D�D-Sm��t,>b�H��#R$�@C�=�!Q���F�@8��<BHLDH�2:�Pa MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b� 1!Q��#6�pH��#>b��D>R�a FA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�PHT�#���L��#ұ��m��t,>b�H��#�Hm� 1!Q�d�CD��P �2a HA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ���<�HLDH�2���# �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�PHT�#��P8��܆�`H��#��#(��D�D-Sm��t,>b�H��#�Hm�����#$��D�D-��# Y:B1�a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�pHT�#>b�����#���H��#��X<HLDH�2�>b�CD��P �2v�@0��=��D>�#6�pH��#>b� 1!Q��#v��HT�#��a JA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�PHT�#��P8��ܖ�`H��#��#(��D�D-Sm��t,>b�H��# �& )��`HT�#��#$��D�D-��#N�#��0T@a MA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�pHT�#>b�����#���H��#���<HLDH�2�>b�CDv�@0��X:� a�b�����X<�HLDH�2���#ұ���>"Q���>a MA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`�'O`d��PX�0���L��#����9��b�����X>��D>�#��#R$�@C�="Q���Hm��t,>�#��#$��D�D-��# �<�!���a GA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ~�E�@��PX�0���L��#����9��b��D>�#��# ұ�������L��0T@d��@,`��t,>�#a LA,@��4WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#��`�>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`�'O`d��PX�0���L��#����9��b������="Q���Hm��t,>�#��#N�#>r<BHLDH�2:�P��#�L��#ұ���a MA,@�O�Osu��`n v@`@p�`�dl@r�{`�9��<��<�zsy��`n v@`�dl@q�ld {p�<�A��#��`�>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ~�F�@��PX�0&���L��#����9��b��4� H��#N�#>b�����ܖ��H��#>b[<BHLDH�2>"Q���Hm�CDF�pH��#>a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0��pH�P a��D>�#��p8���>b��t,>b���#0��D�D-S�#��0T@d�H��#N�#>b��t,>�#���L>b��D>R�a PA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7�)(Q0�#��`p>N`d��PX�0v��HT�#�����#R$�@C�<B"�����<BHLDH�2���=�D>�#>b�CDv�@0���<B"Q�����X>B�D>r���>�"���>�#���L���a HA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0&�pHT�#>b��t,>b���#0��D�D-S�#��0T@d��@,`�H��#ұ���<�HLDH�2���# �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`���$���M� K0��0!P(܈A� ���D �� 0b`X ��E�@��PX�0f��HT�#�����#$ұ������#4��D�D-�����# Y:B1��9��b��D>�#>b��t,>b���X<�HLDH�2�>�#a MA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0&�pHT�#>b�����#���H��#��X<HLDH�2�>b�CD��P �2v�@0��=��D>�#6�pH��#>b� 1!Q��#v��HT�#��a PA,@��7�P�����`t�@p�d��`@r�G��<�;zsu��`n v@`@p�`�dl@r�{`�;��<��<#��`P>�1�� B`��U��A� � �8�@0�hBӄ@�p4;b� �7S)(Q0�#��`p>N`d��PX�0v��HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d��@,`�H��#$������#$N�#�����#(ұ���#>b� 1!Q�T���a MA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�06�pHT�#>b�����#���H��#���<HLDH�2�>b�CDv�@0��X:� a�b�����=�!�����#,��D�D-��>"Q���>a PA,@�O�ysy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#��`P>2�� B`H��U��A� �J�< �� `���U��A� Њ�P�"� 0b`X ��F�@��PX�0���HT�#�����#$ұ������#4��D�D-�����# N�#>�#��0T@d�H��# �& )6��HT�#>�#���8���>�#���H��#�����#8��D�D-S�#>a A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,�� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n���� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��# �Y;�HLDH�2�掠�L��#��T5n���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������0n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������0n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������pn0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������pnPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������pn0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������pn0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me��_�O�H#�d���4UM<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������pnPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������pnPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-o� 1!Q˴<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������pn`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������pn`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#��T掠�L��# �Y;�HLDH�2��`NSո�#��T5o� 1!Q�d��_�O�H#�d��_�o�H#�d��_�_�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!��@NSY;�HLDH�2�掠�L��#(��D�D-�n���4U�[<�!8MU󶎐�Lv�0<Sd��_�O�H#�d��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2���������4M掠�L��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0n0q``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0n0v@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,T� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#��`�>�0�� Bpp0�p�lC �����LƎ��L��# ��;�!8MU�֎@NS�;B���>�HD4<B���>�HD4a KA,� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!F�������4MƎ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_��H#�d���4�ma .A,�� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,d� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,$� �7b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#��`�p�A8v�0<Sd���4a A,D�\ah�@np������0nPq``@p�`� d��D��#��`0.��A8v�0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#��`B�@v�0<Sa A,��\ah�@np������0nPv@`@p�`� d��D��#��`�+��A8v�0<Sa 1A,�� �7�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a KA,D� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a .A,� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� 8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� 8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,D� !8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,T� )8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\ah�@np������0n`s `@p�`� d��D��#��`�2��A8v�0<Sa A,$�\ah�@np������0n`v@`@p�`� d��D��#��`3��A8v�0<Sa .A,4� 58b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a AA,�� A8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa .A,�� M8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,��\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,T� �7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_�_�H#�d���4�m�=B���>�HD4a 2A,�� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2���������4M掠�L��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,�� �7Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,D� 8W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m=B���>�HD4�=B���>�HD4a 2A,� 8�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� 8�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,D� !8�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2���������4M�������4M֎��L��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� )8�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#��`�2��A8v�0<Sa A,$�\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#��`3��A8v�0<Sa 2A,4� 58�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� A8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� M8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,��\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,T� �7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�>�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�>�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!Ǝ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d���4�m�=B���>�HD4=B���>�HD4a 2A,�� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`@?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,d� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��``?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`�?�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,$� �7�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�?�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#��`�p�A8v�0<Sd���4a A,D�\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#��`0.��A8v�0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#��`B�@v�0<Sa A,��\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#��`�+��A8v�0<Sa 5A,�� �7Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#��`�?�0�� Bpp0�p�lC �����LƎ��L��# �Y;!8Me���4UM�;B���>�HD4<B���>�HD4a OA,D� 8W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#��`�?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!F�������4MƎ��L��#(��D�D-�n� 1!Q��<�!8MU�v�0<Sd���4U��:BHLDH�2�<B���>�HD4�;!8Me��_�o�H#�d��_��H#�d���4�ma 2A,� 8�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#��`B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� 8�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#��`0B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� 8�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#��`PB�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,D� !8�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#��`pB�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# ��;�HLDH�2�֎��L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,T� )8�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#��`�2��A8v�0<Sa A,$�\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#��`3��A8v�0<Sa 2A,4� 58�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#��`�B�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a EA,�� A8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#��`�B�0�� B0�0� �0�p�lC@� !�6ĐA8Ǝ��L��# �Y;�HLDH�2�掠�L��#4~!>�#�DD��#4~!��#�DD��#$��D�D-��#4~!~�#�DD��#4~!��#�DDa 2A,�� M8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#��` C�0�� B0�P�lC �����LƎ��L��# �Y;B���>�HD4�;B���>�HD4a A,��\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,��\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,T�\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,t�\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #��``C�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G #��`�C�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�C�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#��`�CC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#��` FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,T�\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#��`@C`8v�0<Sd���4��#�Pa A,�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#��`6� `8v�0<Sd�E,a A,4�\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#��` 6� `8v�0<Sd�E,a A,��\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#��`�3� `8v�0<Sd�E,a 0A,T�\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#��`@F�!��0U�B~!~���d���4n���4��# ��:�T E����O\S��#�Pa DA,t�\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG#��``F�B B��@Ǝ0U�B~!����d�S,���>qM L��PNS��PNS��@NSY<�!8MU�v�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#��`�FC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P #��`�F�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#��`GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#��`:� `8v�0<Sd�E,a A,4�\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#��` :� `8v�0<Sd�E,a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#��` GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P #��`@G�A B��@֎0U�B~!����d��3E��PT�B��0U�B~!>���d�S,���>qM LƎ0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#��``GC! v�0<Sd�S,���>qM L��0U�B~!~���d�E,a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#��`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#��`01��� ��#�c��t �a A,D�\ix������ �n s `@p�`@q�`@r�`@s�H����#��`01��� ��#�c��t �a A,D�\j|������������0rdldld ld0{��<��<��<��<#��`01��� ��#�c��t �a ���� �G+A�@v�@0��:BQ Ea ���� �G+A�@��PT�Bv�@0��a ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@v�@0��:BQ Ea ���� ��*A�@��PT�Bv�@0��a ��A� �G)#�`�0�v�@0��X:!�b�E,a ��A� ��(#�`�:�0�v�@0��X:!�b�E,a ���� Ȏ( �hB�&�İQ�C8��@<1�9��b�E,a ���� Ȏ( �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ���� �� �hB�&�İQ�C8��@<1�9��b�E,a ��A� �)#�` ;�@� 0� ��@�@��@<1�9��b��,��#�Pa ��A� � )#�``;�@� 0� ��@�@��@<1�9��b�E,a��, a A, ��\U�C8��;�;�C9�������A #��`�*���@v� 4a ���q� �� B�A8��0T�b�0 !I��p�a��, q l2"�\�3�E<�^�3��>�`�3�I�b�486M�d�4XFX�f�5x�Z�h�5��]�j�5�6i�l�6�Fl�n�6��n�p�6�y�r�787}�t�7XG��v�8x���x�8����z�8�7��|�9�G��~�9�7����:@����:8�����:X�����;x0����;�@����;�0Ƀ��<��̃��=�ۃ��>8`ꃔ�?XP����?x�����@�����@�����A�0(���B�09���D�I���D8�X���EX�_���Fxo���G��~���H�Џ���I�𨄮�J�ૄ��J�����L8 ؄��Mh ߄��M��脼�N� ���N(����Nh ���N�����N� ����O�����OH ����O������O�0����O�����PHP ���P�� ���P�� ���P���PH����Q����Q�����Q( ���QH(����Q�(0���R�(�(���R)@*���RH)�+���R�)@-���R�)�.���R*P8���SH*�9���S�*p;���S�*0=���S+�>���SH+0H���T�+�I���T�+0K���T,�L���TH,�N���T�,X���U�,�Y���U- [���UH-�\���U�-P^���U�-�_���V.`i���VH.�j���V�.`l���V�.�m���V/�o���W(/`y���Wh/�}���X�/`����X�/����X�/�����X�/@����Y(8 ����YH8�����Y�8@����Z�8�����Z�8`����Z�8����Z9�����[89�����[x9`����[�9�����[�9`ȅ��\:@ʅ��\X: ̅��\�:΅��\�:�υ��];�م��]X;�ۅ��]�;�݅��]�;�߅��^<����^X<`���_�<�����_�=@ ���`8> ���a�>)���bx? 8���c�?�9���c�?P;���cH0=���cHH?���d�H�H���d�H�J���dI�L���dHI�N���d�IpX���e�IPZ���eJ0\���eHJ^���exJh���f�J0j���f�J0l���fKn���fHK�o���g�K�y���g�K�{���gL�}���gHLp���h�LP����h�L0����hM����hHM�����h�MИ���i�M�����iN�����iHN�����i�N�����j�NЪ���jOЬ���jHO�����j�O�����k�Op����kXP����kHX0����k�XȆ��l�X�Ɇ��lY�ˆ��lHY�͆��l�Y�φ��m�Ypن��mZ@ۆ��mHZ�݆��m�Z�߆��n�Z�膮�n[Pꆱ�n([p놳�nH[�솵�nh[�톷�n�[�o�[P����o�[�����o(\@����oX\p����px\� ���p�\� ���p�\����q�\`���q]���rH]0+���rh]�/���s�]�>���t�]X���u�]pi���v�] {���x^����y(^p����zH^P����{h^ʇ��|�^�ۇ��~�^�����^������^����_� ��Ҁ(_�����H_�����h_.�����_0=�����_�I�����_@M����_ Z���h�i���(h y��ՇHhP�����hh������h����މ�h�������h���̊�hp�����i����ϋ(i����̌Hi������hi ������i������i0������i������i� ����j����(j@+��ϒHj�.����hj�=�����j�J��Ô�j�M�����j`Y�����j�\����k�l����(k�{���Hk����hkЏ�����k ���͙�k���͚�kЯ�����k�����l0�����(l����ɝHl������hlp�����l�������lP���ߟ�l�������l�����m�����(m.����Hm�:��ǣhm>�����m�J�����m�Z����m�i����m y����n�|����(n�����Hn������hnp�����nP������n������n�������n0�����o�����(o �����Ho�����ho �����op ����o ����o�)�����o�-����x@=����(x`J��ĴHx@N����hx Z�����x�]�����xPn�����x~�����x������y���͹(y������Hy�����hy@������y�������y����ؽ�y`������y�����zP����(z`����Hzp ����hzp�����z������z�.�����zP=�����z@J����{@N����({`[����H{�j����h{Py�����{������{������{�������{������|������(|������H|������h|0������|�������|�������|�������|������}������(}� ����H}�����h}@+�����}@/�����}�=�����}�J�����}�N����~�Z����(~�^����H~pn����h~ }�����~Ћ�����~�������~�������~����� �����(п����H������h�������0������������ ������0������0 ����(������H�`(����h�/������<������H����Ȉ M�����`\�����k����(��y����H��}����h�p�������`�������������؉`�����������(�������X�p�������������Ȋй�����������������(�@�] �v8threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_75_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z16__isGridConstantPKvllvm.nvvm.isspacep.grid_const_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z31__cvta_generic_to_grid_constantPKv_Z31__cvta_grid_constant_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj_Z16__match_any_syncjjllvm.nvvm.match.any.sync.i32_Z16__match_any_syncji_Z16__match_any_syncjmllvm.nvvm.match.any.sync.i64_Z16__match_any_syncjl_Z16__match_any_syncjy_Z16__match_any_syncjx_Z16__match_any_syncjf__float_as_uint_Z16__match_any_syncjd__double_as_longlong_Z16__match_all_syncjjPillvm.nvvm.match.all.sync.i32_Z16__match_all_syncjiPi_Z16__match_all_syncjmPillvm.nvvm.match.all.sync.i64_Z16__match_all_syncjlPi_Z16__match_all_syncjyPi_Z16__match_all_syncjxPi_Z16__match_all_syncjfPi_Z16__match_all_syncjdPi_Z11__nanosleepj_Z9atomicCASPttt__usAtomicCAS7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! |z !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQl� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@�� ����� ��:���� ��ށ���a~��!�a�������@�l X6�,�$� �b��X�@0 �f� �3b��x�@@ �� e �����H5��=�C;�A8��;�=�=��;��<�=�C8��<�;��;�C9��� ������5������ �����!�!�����A����!܁ʁ� c@�����H�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9� �`a�����HI�`� �A&�1ad�$�@�0�2af$K3�ƙP��<�@ah�DɄ��H�iB@M�h�T�`� �"�gB`M*�� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��2TP��� 5 "PA1� 1��8F�"J�|��� Ȍk�)��ɧ��jPP4(�4����&_8��F�a ( 6����&� ��@ep� �c�)��� ��@" (���F�"J�|J8��FPP:(����i�(a��pDP@�� (����i�(a�)�"P@�Ѓ (����#�����&_:�h�Q�G���8G�"J�|J:�h�Q�G��F�"J�|�p��FB}���>��BΑ��&��'�l$��G�B�i�(a�É� }��G!飏>h�s�)��ɧ�É� }��G!飏>ȑk�)��ɗ'�pD��G}��>����i�(a�)�p� GD}��G)&飏>� Jn���&i���c�)��ɧ�f�Q@2�4�E�"J�|��l$@8��i�(a�)��l$@>�i�(a�f��B�F)D�r�4E�0�H3�(�)��1�Q��SH3�(�*��1�Q��/Nc�(0��@�\#M%L>�8�Q���"�b�r�4E�0���6 0� �`�r�4E�0���4�� (�-@�#M%L��4ƍ 0��`���5�Q��S��7 0��B�b�P/�HSD ��8��#� 0��`�0�HSD �O-Nc��0� (�0`�4� �5�Q���L5 �)�1��1�HSD �_,0�H(��2$SL1��5�Q���L7�)��B0SL1�P3�HSD �_,0�(��b�)�3�SL1�A�Q��/Nc,Nc�(0��@�\$M%L>�8��8�Q���"TcYs�4E�0�����6 0� �`es�4E�0���4��4�� (�6@�$M%L��4��4ƍ 0��`���E�Q��S����7 0��B�c��8ISD ��8��8��#� 0��`�P9ISD �O-Nc,Nc��0� (�9`����9�Q��,D�u���:��9�Q��,��u�)�;�C�#M%L��P�B�hPGu �:�C�#M%L��P�B��PGu�)=ꨣ�:TO���O!� h�RT@��b�"�T ���PL1TP�Q�*C1�C ���b��ʠ�:PCTL�)�!�� ��IT�b�1�(*D1��YT�!� QL1�C�bz�8*C1C�Au�!�ʠ�:�HeP�u��2`�dRPB� �<T �T0�X*� `�T ( ��$S)�QGu � ��:�C6Bu��p*�@:��u ��`�:�S�1��@B�A �ʠN1�Q�N�AJJ�P@KA� ��"P=U�+���p�TF@�BTZ�U���*FU�V�(�b��*B1�W�0��*�:�$V h��*�Y�G�@�Ң5���Z��Q�;ܢ���"�E���.���Ex�)E8E/ڋ�)6}�_�F��#=���`DR�C ��h�"L�)F��ƨ1R��<F��6E�F2���<D�A��2J��dF��3Ex�3��)�;�he��H�2\QDZ�@�2� W(�V�+�Z�T+�n�A��ኸ!��p]�le��.NH�2\��)D[�� �� W��V�+Ӄt+��B����&!��pc�pe��1UH�2\!�6D\�x�2� W �!W�+2K��+��=C̕���!��te�bH�2�:D]!Ⱥ2T�]!�H�2T��]!�ȻB�: x���>� ��(b�*�E@�J� �W�ԡ����Z��!��[$�����E���>����E���H�"ħ�g (�}�E@0 �� F�>è�"ܗX����c�`���4B1����BCSL1�AB�hB#��N*��,,�@⊵�4,�n���"�>� �q]}��Gb!�� H�b\��X�+�2�2�W�b1� �T,�����X�+룏>�  qc@0��H�B\!����"�b�!�qg�SL1�c!��LuHG,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �a��0;��{ � �e�p�c0 � �H�`��q�b0�($r�8j1�`��`� @���\0�[  ��L..��'�#��v@~� ơ��@;������` �|�q�b0�(�r�8z1�`$v�`� @�ڿ\0�_  ��b� ���@;�� r�8�1�`d�A.�8�~5���` ���`� @�������v@��r�c0���Y@�|  ��x@ ȡ��@;�qd9�1�`T��+�9�FPp�8�` �P, �`� @��I��#��v@�)��q�c0�hOW0�u  ���� ����@;��\�8�1�`TƂ+�;��Yp�x�` �Ph �`� @�zq��#��v@�.��q�c0�h�W0�y  ��� �A��@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��m� @ �f��q�`�4��� @ �d�x��!R�P:p0D�_b�H!LD�@�I��HP"�1!� C�:&$|�`�t�Ĵ4 �t����!�:�Hp0D�g"* �H,MH(@�ɧ i%P"�51� C��&���`�d�E4 �ԛhn��!�}�N0D2q�� �H4N@`@��̉g,"�9�C$R' � `�D넴 �̝x���!R�P\0D*y� �H5ODw@���H/"�=!�C��'$� `����4 �ܟ�N��!���j0Dz�Bj �HaXL�@���i6"�bA�C�],�� `��E� �H��~��!RN�x0Dz��*�H�Y\�@��7��="�g!�C��,&� `�$�U �̴����!���}0D��B��H�Z@�@�iW��>�"�j!�C$x-�� `�į�� �T�`���!���}0D�����Hl[0�@� o '?"�n��C$�-�� `����� �з����!R�S~0Db�"��H=\L�@� � '?"�q�C$W.�� `���� �عp���!�>P~0DR����H8]@�@� ��)?"�uQ�C$�.�� `�4�E� ��`���!��~0D����H<^0�@� � �?"�y��C$R/�� `�$�� ���X���!Һ�0D��b �H _$!@�)�%D"�|��C$�/�� `���E�@ ��`B��!��H�0D:�� �H�_$!@�����?"���C��/� `�d��"@ ���HB��!� H�0DrA#��H7h �@���$D"��q�C�74� `���"@ �@�8F��!�)ň0DbE��H�h%@�I��D�"��q�C$s4� `���R" ���@J��!�>E�0D�G#)�H(i%@��% �D"٤Q�C��4� `�4��"@ ���@V��!�[ʊ0D�Ki�H�i$-@�I5��D"ŦA�C��4� `�䛆Q"@ ���HR��!R{E�0D�OC��H�i0@�)D��D"��A�C$5 `�t��!#@ �z�PV��!ҙƊ0DjS)�Huj%@�IO��D"��A�C�R5� `�ԪFQ"@ �d�@J��!��E�0D�U�(�H�j%@�I] �D"ɫQ�C�{5� `���FQ"@ �H�PR��!��F�0D�Y�(�H;k%@��g �D"��Q�C$�5� `�D�FQ"@ ���H���!���0DB]cY�H�k+@�Iw �F"����C$�5� `�d�FQ"@ ���HJ��! F�0DRa)�H2l%@�醍�D"��a�C$36� `��ƆQ"@ ���HJ��!�F�0D"e#)�H�l%@�i� %E"��a�C�q6� `���FQ"@ ���8J��!�=D�0D�g)�H#m%@� � �D"ɴq�C��6� `�4��Q"@ ���hR��!�]I�0Dm�I�H�m()@� � 'E"����C$�6 `����a#@ �H�HJ��!R�F�0D�qC��H=n8@��̍G"����C�;7� `��Q"@ �L�@J��!��E�0D�u#��H�n8@�I� G"��q�C�y7� `��R"@ �T�HR��!��E�0D�y#��Hao:@���$E"��Q�C��7� `���F�"@ �B�HJ��!��F�0D�}#)�H�o%@�����D"��a�C$�7� `�t��Q"@ ���HJ��!� F�0Db���H<x$<@�� �G"��q�C$=<� `���P"@ �F�0J��!R*C�0Db����H�x >@���D"��1�C�_<� `�T��P"@ ���8|��!�;��0D��C*�H$y8%@�I&�D"���C$�<� `�ė�Q"@ �F�XJ��!�kH�0D���)�H�y,%@� >��D"�灔C�=� `�Ģ�Q"@ �d�h���!ҏ��0D:ӣ!�Htz�@� O�>"���C$T=3 `��Ga&@ �j�@���!R���0D�1�H�z f@�i^�L"�끘 C��=3 `���b& �f�@R��!����0Dۃ �Hg{ d@��mL"��A�C��=�� `�4�r �V�@���!����0D��1�H�{f@��|�L"� C$�=3 `��b& �L�@���!� ��0D��I�H>| b@�ɌBL�"�� C$9>0 `���ǃ& �R�`���!R-�0D"�A �H�|<h@�韏M"��� C��>4 `���G�& ���h���!�j��0D���Q �H�}<h@��M�"��� C$?4 `���ǃ& ���`���!R��0DB��A �H�~<h@�i�M�"��� C$?4 `���ǃ& �r�`���!R��0D���A �H�8h@����M�"��� C��?4 `�$�ǃ& �Ba���!R "�0D�A�A �Hh�@ C$<D���!)"�@��f `����& ��q���!R?"�0DrI�a �H=�@n@��-�M�"�%r� C$�D 9 `�t��'8 �\)���!�l"�0DZO� �H� v@�i?�N�"�(�� C�E0< `�4�H"&@ ��I���!R�"��0D�S$ �H��`x@��W�DL�"�+�� C�xE1 `���H"&@ �F����!��"��0D"[$ �Hm�$b@��n�DL�"�-�� C��E� `�ľ�"@ ��yB��!� #O�0D�a���Hx�@!@� �(D�"�2�C$tF� `����' �hq���!�X#��0D�k�� �H~�8~@����O"�7�� C��F? `�����'@ �ny���!��#�0Du� �H��8�@���GT�"�;� C$}G<P `����#*@ ��yD��!��#��0D*}� �H��x�@�I���T"�`�@�)�GM"�b¨ C$VL6 `�����&@ ��1y���!>&�0D2��a�H5�4l@�I,�M"�e° C$�L6 `���I�&@ �p3y���!�y&�0D���a�H$�8l@�IF��M"�i� C�7M6 `�ԧI�&@ �T5y���!R�&�0D:��I�H��0�@�Id M"�l"� C$�M.4 `��Ʉ&@ �h7����!��&�0D���B�H3�Lh@�Ɍ�M"�qB� C$XN.6 `�t�I�&@ ��9����!�L'��0D"��R�H{�Lj@�ɵ+U"�w"� C$�N�T `���ɔ*@ ��<����!��'�0Dj��B�H�\h@�Iߓ M"�|2� C$�O04 `��� �&@ �`?����!��'�0D��C�H2�Ph@�� ��M"��R� C$YT06 `�����&@ �@R����!�M*��0DRKS�H��Pj@��6 M"��"� C$�T.4 `�T�ʄ&@ ��T����!��*�0D�U�b�H�Tl@��_ M"Ѭ"� C$�U.4 `�Էʄ&@ �`W����!��*�0D�_�b�H1�Tl@�Ɍ M"�"� C$WV.4 `�T�ʄ&@ ��Y����!�K+�0Dk�b�Hy�Tl@�ɵ M"��"� C$�V.4 `���ʄ&@ ��\����!��+�0DRu�b�H�Tl@��� M"��"� C$�W.4 `�T�ʄ&@ �P_����!��+�0D��B�H'�Lh@�I�k `����0D�["��2-@ ��q��H%�H C��\���!�[.�@�I4��M"��B� C��\07 `�T�K�&@ �tt����!�.�0D��B�H��Lh@��]�M"��2� C��].6 `�Ķ �&@ �@w����!��.�0DB��B�H��Lh@�I��M"��B� C$>^.6 `�4�K�&@ ��y����!R?/�0Dr��B�Hd�Hh@�ɮ��M"��"� C��^,6 `�4���&@ �L|����!Ҏ/�0Db��B�H��Hh@��֗�M"��2� C$~_,6 `�$� �&@ ��~����!�/�0Dr��B�H�Lh@� ��M"� 3� C�0d.6 `��� �&@ �X�����!�82�0D�G�B�H+�Lh@��'�M"�%C� C$�d.6 `���L�&@ ��QV�!�2��0D2Q�Z �H<�Lr@��M Np"�*� C$Ze&8�`�t� $'@ ����!�2Y��0D [&��Hr�d���iu�)"�.�� C$�e�8 `�T� �*@< �z�����!3]��0D�e�{�H��|�@�饙0x�Hp�x�@�ɵ��"�7��C$g�Z `�t� W  �F�1�W `��� �C��g�� `���L�@@ �ʞ�b��!�3V�0Dr}F��H��h�@�I�'V"�`s� C$4l�� `����d+@H �V�����!�.6�}0DZ�f��H��DC��l&\ `�$�ͥ+@H ��p��!k6�0D����H��`�@� F W"�is� C�?m.\ `�d���+ �ҵq���!ҽ6��0D*����H;�`�@�in��W"�n3� C��m&p `���. �L�����!7�0D���H��\�@�i�� \"�s3� C��n,q `�4� &. �������!�l7�0D*�f�H��X�@��� \"�y�� C$>o0p `�D��. �ֽ����!��7 �0Dj�f!�H8�,���i��\�"�}�� C��o��!�7 �0Dz�b�H��@�@����H^"��� C�t| `��γ/ ��С���!�(:��@0DrEgI(�H��,C$rtr `��N2 �@҉H��!RL:��0DKGR�Hu�@-@��4f"զc� C��t�� `�d��r3 �Bԉt��!��:Q�0DSG�Hu�0�@�)T�\"��Ø C�\us``�T��.L ���a �H��0�@�)e��]"�� C��u$y `�Է�T/ �^ׁ���!��:о0Dz_���H$�0�� �&]�"��@ ���a���!;R�0D2eG"�H��L'@�i��Ie"��� C��v"� `���53 ���aj��!�h;��0DzmG��H��H=@�i�� l"��Ð C$wr `���c.L ���a�� �!��;L�00Du��"��Ð C$]w"v `���N�. ��ݑ���!��;R�0D{��Hp�@�@� ���_"վØ C��w�t�`���0D��!�H%�H!@���d"��3� C$>|&� `��O�2 ���`��!R<>��0DBɇ��H4�07@� ,Ig"��#� C$�|&� `�t�C. ���a���!�{>��00D�χ1&�H'�0���iF `���C. ������!�>ѻ0Dj�G��H��H�@�)^_"��� C��}* `�d�c.P ���a� �!��> @�Iu�\"��#� C$�}$� `����t2 �Z��T��!?Q�0D��'��H��\3@�)��f"���� C�x~$� `�4ҏ�3 �j�����!Z? �0D��!�H��0������\�"��ä C$�~��!|? �0D��'b�H-�D�@���I^"��#� C$Q | `�$��/ �������!ҽ?��@0D��I(�H/�0C��r `�t��2 ����H��!��?��0D��gR�H��D-@�I�f"� t� C$5��� `�d�s3 �D�t��!-BR�0D2Gh�H�1�@��$!�\"�$Ę C���s``����.L ��b �H� 1�@��5��]"�&� C���$y `���T/ �f����!ҘBо0D�S���H� 1���V!&]�"�+�@ ��b���!�BR�0DRYH"�H< M'@��m�Ie"�.� C�م"� `�D��53 ��bj��!� C��0D�aH��He I=@�鎡 l"�2Ĉ C$[�� `�$�C6T ��b�� �!�>C��P0D2i�A�H2 1b@�ɧ!Im"�5$� C$ц&� `�T��7 ������!R~C�0DRqȲ�H`1d����!�l�"�9Ġ C$R�� `��Є7 ������!��C�0DRy���H>I�@� �!It"�>��C$݇� `�d��: ���T��!R F�0D���r�Hl1b@� #Fl"�bĐ C$X���`�ċc6T ��1b���!=F��0D�HR�H2Il@��,��m"�e4� C$Ռ"� `���QD7 ��3����!��F �`0Drш1,�H:1h@��L#Fl"�i4� C�R�&� `����7 ��5����!�F�0D��H�Hda�@��o#�t"�nĠC$ڍ&� `�t���: ��7�\��!� G��0D���Hf1d@�I�#�l�"�qĘ C$U�� `�d�#6 ��9����!=G�0D2�hr�H9Mp@����Hn"�u� C$׎,� `�D�C6X ��;b� �!G �0DB��H4Mx@��̣Io"�yD� C$W�(� `�$�: ��=�D��!��G�0D���1�Hj1�@���Iu"�~4�C$ޏ(� `��#6 ��?b���! J �P0D�A�!*�H`(1f@�� %m"�Ĉ C$R�$� `�d���6 ��Q����!�>J�0DrI)��H?)Et@� .%�n"��Đ C$ٔ��`���6 ��Sb���!�}J�0DJQi��H<*Q|@� N%�o"��$�C$[�$� `���F: �@VbL��!�J �0D�YiR�Hk+M�@��o%�u"ɮd�C$���� `����� �jX����!K�}0De�� $�H�,Y�@���% v"����C$��,� `��ג; �d[�`��!zK��0D�o�� �H-.Y�@�i�%�O�"ݹ��C�W�8�@`���f; �F^�t��!��K� 0D�{ ��H�/a�@���%Lw"����C��0� `��+ ��p��� �!�+N��p0D����H�8}�@�I&��>"����C$Ԝ�� `����w@ ��s����!R�N�}0D����H�:u�@��\��>"����C$���� `���w@ �`w����!��N�}0D"���H;<}�@���� wY $2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B)b0E �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �alignF&0��b0��b0���0��0���0��b0���0�`�0���0� �0��b0�P�0���0��0���0��b0���0�P�0���0��0�@�0���0�!1��$1��%1�`(1��)1�+1�`-1� "z1��b0� "{1� "�1� "�1� "�1� "�1� "�1� "�1��.�5�/�5�0/�5�`/�5��/�5��/�5��/�5� 2�5�P2 6��2!6��2"6��2#6�3$6�@3%6��3(6��3)6�6*6��.26�/36�0/46�`/56��/66��/76��/86� 2=6�P2>6��2?6��2`6��2a6�3b6�@3c6��3f6��3g6�6h6��.p6�/q6�0/r6�`/s6��/t6��/u6��/v6� 2{6�P2|6��2}6��2~6��26�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3 7��3!7�6"7��.*7�/+7�0/,7�`/-7��/.7��//7��/07� 257�P267��277��287��297�3:7�@3;7��3>7��3?7�6`7��6h7��b0��6i7��b0��6j7�7k7��b0�07l7�P7m7��b0�p7n7��7s7��7t7��7u7��7v7�:w7�0:x7�P:y7��:|7��:}7��:~7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6"� ��#oC��Bܔ`0�07&� �� #w���B޴`0��7.� �� #��B��`0�0:2� �� #�c��B��`0��:8� � 3 E �0�1À� C3 Jp�0,3��� �03 O��0@A4� � �D3 T�0TA4�`� �03 X�0dA4à� �D3 \�0tA4��� ��� C`0� �0�A3 d�� C`0�`�0�A3 h3 i3 j3 k03 l03 mD3 nD3 o3 p3 q3 r03 s03 tD3 uD3 v03 wD3 xD3 y3 z3 {3 |03 }03 ~D3 D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 03 !03 "D3 #D3 $3 %3 &3 '03 (03 )D3 *D3 +03 ,D3 -D3 .�� L11� AL�0�D@3 5�� �M71À�M�0�D�3 :�� �N11��M�0�D@3 >�� �O71�M�0�Ep3 b�� �X/1�@AL�0�E3 f�� �Y41À�M�0�Ep3 j�� �Z11��AL�0�E@3 n�� �[71��M�0�E@3 r�� �\71�@�K�0�E3 v�� �]41ÀM�0�Ep3 z�� �^/1��AL�0�E3 ~�� �_41��M�0�Fp3 ��� �h71�@�M�0�F�3 ��� �i11ÀM�0�F@3 ��� �j71���K�0�F3 ��� �k41�M�0�Fp3 ��� �l41�@�M�0�Fp�3������������������������������������������������������������������������������������������������������������������'b b b b b b b b b b b b�n�n�n�n�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�2��t������\�������F j#!7;�6�07�7�0��7��QT�6n7rC7v�7z�7~<�C<ƃ<��<�=�C=փ=��=�>�C>�>��>�?�C?��?��?�DBDDF�DJ�DNERDEV�EZ�E^FbDFf�Fj�FnGrDGv�Gz�G~L�DLƄL��L�M�DMքM��M�N�DN�N��N�O�DO��O��O�TBETF�TJ�TNUREUV�UZ�U^VbEVf�Vj�VnWrEWv�Wz�W~\�E\ƅ\��\�]�E]օ]��]�^�E^�^��^�_�E_��_��_�dBFdF�dJ�dNeRFeV�eZ�e^fbFff�fj�fngrFgv�gz�g~� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,T� � �d��\֏������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`��������4M�������4Ma A,�� � ��6C�A8 ��\Ə`��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,� � �d��\֏������4Ma A,D� � ��6C�A8 ��\Ə`�������4M��������4Ma A,t� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,4� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,d� � �d��\֏������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,$� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,� � �d��\֏������4Ma A,4� � ��6C�A8 ��\Ə`�������4M��������4Ma A,d� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,$� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,d� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,$� � �d��\֏������4Ma A,T� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma Ĉ�� ܇� �pC`f0��,�0K0 TD�B�@�0�c�`�A`���4��#�,a YE,@��P#EzAPF�}@�^�T�xApr2b` ��BpAp r2b` ��BpAp2���2B0K T�p2���2 D0K@ T� �pqQ�*\ �f1�`NSٽQ&$@#�����]& ұX`� �E&$@#�����=&��Twm� ��4Սd� 0�5&�,6o�� f�`NS�U&��T8m� ��`4n� ��4�m� ��4Un� ��4o� ��4�&��T5n� ��4U��>B?BXa!�n� ��<wn� ��4�M�b�!8Meۖ�@��c�!8Me�a Ĉ�� ��� �pC`f0��,�0K0 TD�B�@�0�c�`�A`���4��#�,a YE,@��P#EzAPF�}@�^�T�xApr2b` �qBpAp r2b` ��BpAp2���2B0K T�p2���2 D0K@ T� �pqQ�*\ �f1�`NSٽQ&$@#�����]& ұX`� �E&$@#�����=&��Twm� ��4Սd� 0�5&�,6o�� f�`NS�U&��T8m� ��`4n� ��4�m� ��4Un� ��4o� ��4�&��T5n� ��4U��>B?BXa!�n� ��<wn� ��4�M�b�!8Meۖ�@��c�!8Me�a ���� ��� ˆ�� ��B�@��Ə֏��P����@��a [A,@��EzAPF�}@�^�T�xAPJ����^�������}�������}�` �� � #�`p$�)Ȉ�� ܇ BpApqQA+\ �f5�`NSٽe& ұX`� �A&��T7n� ��4խ�d�!8Mu���0�`� ��4��f��D&�PNS�f�`NS�&��T��`NSյ&��T�%&�շ)&��T5n� ��4o�`� �, n�`4n��`�A`� �,�}[a!�n� �, ��e�!8M�߆�`NS�&@3Դ-&��T�m� ��4��[c!�a ���� ��~ ˆ�� �B�@��Ə֏�`�����#�,>Ra ���� ܇~ A�@��Ə֏@��a [A,@��EzAPF�}@�^�T�xAPJ����^��@@���}���@���}�` ���#�`p$�)Ĉ�� ܇ BpApqQA+\ �f5�`NSټe& ұX`� �E&��T7m� ��4�me�!8Mu���`��ػ�# @3�e�!8M��v�`NS�a&��T�n� �,˭�`4n� ��4�m� ��4Un� ��4o� �YbB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o�`�A`��`� �tD�U&�,�m� � 5m� �,�9&��T� a ���� �� ˆ�� �G�B�@��Ə֏��P����@��a ZA,@��EzAPF�}@�^�T�xAPJ����^�������}������}��\�������}�` � #�`p#�}�� D�p5�A85�`NSٽe& ұX`� �A&��T7n� ��4խ�d�!8Mu���0�`� ��4��f��D6�@̀�`B!8MeaB!8M�[bB!Q}�aB!8M�`!8Me� ��4U]�b�!8MU���`��ܷY&��Txo� ��4U��>B?BX?B Xa!�n� �, n[e�!˂�v�`NS�&@3Դ-&��T�m� ��4��[c!�a ���� �G� ˆ�� ܇�B�@��Ə֏�`�����#�,>Ra ���� �� A�@��Ə֏@��a ZA,@��EzAPF�}@�^�T�xAPJ����^��@@���}��@���}��\��@@���}�` �#�`p#�}�� D�p5�A85�`NSټe& ұX`� �E&��T7m� ��4�me�!8Mu���`��ػ�# @3�e�!8M��v�`NS�a&��T�n� ��4�m� ��4Un� � �&��T�M&�,�n� �YbB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o�`�A`��`� �tD�U&�,�m� � 5m� ��4�}[c!�a Ĉ�� ��� ˆ�� ���pC�f0��,�0K0 TD B�@ �@N3`� 0��#��#��#��#�,��#�,a sE,@��P#UzAP��}@!�^���xAP�����^�������}�������}�` �� � #�`p%�)Ȉ�� �� BpAp2���2B0K T�p2���2 D0K@ T� �pqQ-\ �fA֙�������0H�b� �tD����������0�`� ��4�m� ��4Un� ��4o� �,�}[`!8Me� ��4U]�b�!8MU㶏ƏF�`����#�Y&�,8o� � 5m� ��4�m�c!�b� ��4���c�!8Me��`NSݸI&��T�n� ��<6�`NSݼq&��U&��T8n� ��e�!8M��F�@̀�bB!Q}f�!8M�׶�`NS�&���`NS�}&��T� a Ĉ�� �� ˆ�� �G��pC�f0��,�0K0 TD B�@ �@N3`� 0��#��#��#��#�,��#�,a sE,@��P#UzAP��}@!�^���xAP�����^�������}������}��\�������}�` � #�`p$�}��pC h0��,�0P�vH��pC@ h0�0�,1P�|00�� D�p5�A8A֙�������0H�b� �tD����������0�`� ��4�m� �,�}�aB!8M�[aB!8M�[`!8Me� ��4U]�b�!8MU㶏Ə֏F�`���Y&�,8o� � 5m� ��4�m[c�!8Me��@���c�!8Me��`NSݸI&��T�n� ��<6�`NSݼq&��U&��T8n� ��e�!8M��F�@̀�bB!Q}f�!8M�׶�`NS�&���`NS�}&��T� a � ���}�_ d��Ə֏�0�`��, a aA,@��EzAPF�}@�^�T�xAPJ����^�������}��!Ȉ�� ܇BpAprbB� � #�`p*�}�%� D�p5�A8<�`NSټu& ұX`� �I&��T�m� ��4Սe�!8Mu�f�`NSݼ]&��Two�� ��`NS�i&��T�n� ��`4n� ��4�m� ��4Un� ��4o� �tD�m� ��4�!&��Tum� ��4U�g�!8M�۶�`NS��#��#��#�&�햙`���5& �0XeB ý�aB4CM�b�!8Me�Ƙ`NSٸ9&��Tvn� ��4��[d!�a A ���}�W d��Ə֏�0�`��,��a aA,@��EzAPF�}@�^�T�xAPJ����^��@@���}��!Ĉ�� ܇BpApqaB��#�`p*�}�%� D�p5�A8<6�`NSټu& ұX`� �Q&��T7m� ��4�m�e�!8Mu߆�`NSݹ�# @3�f�!8M�Ӷ�`NS�q&��T8n� ��`4n� ��4�m� �,��aB!8M��aB!8M�[bB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o� ��4U��>B?BX?B Xa!�n� 0 V�P�p�v�P�P���`NSٴA&��T�m� �,�I&��T�a � ���}�_ d��Ə֏�0�`��, a `A,@��EzAPF�}@�^�T�xAPJ����^�������}��!Ȉ�� ��� �}�E�9� \�\������}�` ��'���l�@<�`NSټu& ұX`� �I&��T�m� ��4Սe�!8Mu�f�`NSݼ]&��Two�� ��`NS�i&��T�n� ��`4n� ��4�m� �tD�m� ��4Un� ��4�!&��Tum� ��4U��aB!8M��f�!8M��ƙ`NS��#��#��#�&�햙`���5& �0XeB ý�aB4CM�b�!8Me�Ƙ`NSٸ9&��Tvn� ��4��[d!�a A ���}�X d��Ə֏�0�`��,��a `A,@��EzAPF�}@�^�T�xAPJ����^��@@���}��!Ĉ�� ��� �}�E�9� \�\@�@���}�` ��'���l�@<6�`NSټu& ұX`� �Q&��T7m� ��4�m�e�!8Mu߆�`NSݹ�# @3�f�!8M�Ӷ�`NS�q&��T8n� ��`4n� ��4�m� �,��aB!8M��aB!8M�`!8Me� ��4U][bB!Q}�b�!8MU릘`NSո1&��T5o� ��4U��>B?BX?B Xa!�n� 0 V�P�p�v�P�P���`NSٴA&��T�m� �,�I&��T�a � ���}�_ 7x`� �� ��@@� d �0�c�`�A`��`�0 �@N3�?!�a yE,@��P#UzAP��}@!�^���xAP�����^�������}��!Ȉ�� ��BpAprbB� � #�`p+�}�%�pCP h0��,�0P�~X��pC� h0�0�,1P��00�� D�p5�A8H�`NSټ�&$@#������& ұ�`� �y&$@#�����M&��T�m� ��4Ս[e�!8Mu�֙0�c� ��4��f�!8Mu��P̓��0�`� ��4^�f�!8M��V� 8�&@3�6�PNS�V�PNS妘PHGT�v�PNS��@NSYb�!8MU׶�`NSո}&��Tym� ��4��>B?BX?B �a!�n� �, ��h�!8M���0�`� ��4UޛeB ýbB4CMc�!8Me�֘`NSٸ=&��Tvn� ��4���d!�a � ���}�_ 7x`� �� ��@@� d �0�c�`�A`��`�0 �@N3�?!�a yE,@��P#UzAP��}@!�^���xAP�����^�������}��!Ȉ�� �BpAprbB� � #�`p(�}�%�pCP h0��,�0P�~X��pC� h0�0�,1P��00�� D�p5�A8H�`NSټ�&$@#������& ұ�`� �y&$@#�����M&��T�m� ��4Ս[e�!8Mu�֙0�c� ��4��f�!8Mu��P̓��0�`� ��4^�f�!8M��F�@̀�`B!8Me[aB!8M��bB!Q}�aB!8M�[`!8Me� ��4U]�b�!8MU���`NS�q&��T8o�`�A`��`� �tD�i&�,xn� ��4U��c� ��&��Tyo� 0 �n� � 5m� �c�!8Me�֘`NSٸ=&��Tvn� ��4���d!�a ���� ��� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�@��a ���� ��~ �p1�����Q�D8 ��0�c�`�A`���&��T��#�,>b� ��4a ���� �� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�@��a ���� �G� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�`���a bA,@��UzAP��}@!�^���xApr2b` ��BpAp r2b` ��BpAp r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<��`NSٽ]&��q& ұ�`� �A&��Twm� ��4�}e�!8Mu�&�0�c� ��4���d�!8Mu��`��ؼ& @3�e�!8M�Ӗ�`NS�a&��T�m� ��`B!8Me[aB!8M�a4n� ��4o� ��4��#OD ��b�!8MU㖘`NSպi&��T8o�`�A`��ÿ8f�@HG��f�!8M�Ӷ�`NSٴ1&��T�m� �,�5&��T6a bA,@��UzAP��}@!�^���xApq1b` ��BpAp q1b` ��BpAp q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<�`NSٽq& ұ�`� �M&��T7m� ��4�][e�!8Mu�f�`NSݺI& �f�!8Mu��`��ظe&��Two� � ��`NS�m&��T8n� �a4n� ��4�m� ��4Un� ��4o� ��4�!&��T5m� ��4Um[?��D���-&��T�n� ��4U��>B?B�a!�n��ÿ8v�P�s�֘`NSٴ)&�,��`NSٹA&��T�a bA,@��UzAP��}@!�^���xApr2b` ��BpAp r2b` ��BpAp r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<��`NSٽ]&��q& ұ�`� �A&��Twm� ��4�}�d� 0�U&��T7o� ��4Սe�!8Mu��`��ؼ& @3�e�!8M�ӆ�`NS�e&��T�m� �a4n� ��4�m� ��4Un� ��4�&��T��#OD ��b�!8MU㖘`NSպi&��T8o�`�A`��ÿ8f�@HG��f�!8M�Ӷ�`NSٴ1&��T�m� �,�5&��T6a bA,@��UzAP��}@!�^���xApq1b` ��BpAp q1b` ��BpAp q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<�`NSٽq& ұ�`� �M&��T7m� ��4�][e�!8Mu�f�`NSݺI& �f�!8Mu��`��ظe&��Two� � ��`NS�m&��T8n� �a4n� ��4�m� ��4Un� ��4o� ��4�!&��T5m� ��4Um[?��D���-&��T�n� ��4U��>B?B�?��D��/�&��v�P�s�֘`NSٴ)&�,��`NSٹA&��T�a ��A� �G����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �G����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����Ə@��a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H���� ��#�,a ��A� ������ ��#�,a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H���� ��#�,a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� �ȿ��� ��#�,a ���� ��� A�@��Ə֏@��a ��A� �Ⱦ��� ��#�,a ��A� �H���� ��#�,a ��A� �Ƚ���Ə@��a ��A� �G����Ə@��a ���� �� A�@��Ə֏@��a ���� Ј� A�@��Ə֏@��a ��A� �Ȼ���Ə@��a ��A� �H����Ə@��a ��A� �Ⱥ���Ə@��a ��A� �H����Ə@��a ��A� �ȹ���Ə@��a ��A� �H����Ə@��a ��A� �ȸ���Ə@��a ���� ��� A�@��Ə֏@��a ��A� �ȯ���Ə@��a ��A� �H����Ə@��a ��A� �Ȯ���Ə@��a ��A� �H����Ə@��a ��A� �ȭ���Ə@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �H� B�A8��Ə֏0@�c��, a ��A� �H����Ə@��a ��A� �Ȫ���Ə@��a ��A� �H����Ə@��a ��A� �ȩ���Ə@��a ��A� �H����Ə@��a ��A� �Ȩ���Ə@��a ��A� �H����Ə@��a ��A� �ȟ���Ə@��a ���� ��� A�@��Ə֏@��a ���� �H� B�A8��Ə֏�@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H����Ə@��a ��A� �Ȝ���Ə@��a ��A� �H����Ə@��a ��A� �ț���Ə@��a ��A� �H����Ə@��a ���� �H� B��@��Ə@H�Y?!<Sa ���� �Ț B��@��Ə@H�Y?!<Sa ��A� �ș���Ə@��a ��A� �H����Ə@��a ���� �� A�@Ə��4֏@��a ��A� �H����Ə@��a ��A� �ȏ���Ə@��a ���� ��� A�@Ə��4֏@��a ��A� �Ȏ���Ə@��a ��A� �H����Ə@��a ��A� �ȍ���Ə@��a ��A� �H����Ə@��a ��A� �Ȍ���Ə@��a ��A� �H����Ə@��a ��A� �ȋ���Ə@��a ������ �ɋ A�@��Ə֏@NS�?!�a � ����� �ɋB�@��Ə֏@NS�?!�a ���� �� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a "D,��� ������}��\`�� #�``&-v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa ���� � � A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ���� �I A�@��Ə֏@��a � ����� ��B�@��Ə֏@NS�?!�a ������ �� A�@��Ə֏@NS�?!�a ���� ܇~ A�@��Ə֏@��a ���� ܇~ A�@��Ə֏@��a "D,��� ������}ğ\`�� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa ���� ��} A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��z A�@��Ə֏@��a � ����� � {B�@��Ə֏@NS�?!�a ������ � { A�@��Ə֏@NS�?!�a ���� ��y A�@Ə0T�b�0 !I֏@��a ���� �Iy A�@Ə0T�b�0 !I֏@��a ��A#�`�&�5�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�5�Ə0T�b�0 !I֏04�a��, a ���� �Ix A�@Ə0T�b�0 !I֏@��a ���� ��o A�@Ə0T�b�0 !I֏@��a ���� �Io A�@Ə0T�b�0 !I֏@��a ���� ��n A�@Ə0T�b�0 !I֏@��a ���� �In A�@Ə0T�b�0 !I֏@��a ���� ��m A�@Ə0T�b�0 !I֏@��a ���� �Im A�@Ə0T�b�0 !I֏@��a ���� ��l A�@Ə0T�b�0 !I֏@��a ���� �Il A�@Ə0T�b�0 !I֏@��a ���� ��k A�@Ə0T�b�0 !I֏@��a ���� �Ik A�@Ə0T�b�0 !I֏@��a ���� ��j A�@Ə0T�b�0 !I֏@��a ���� �Ij A�@Ə0T�b�0 !I֏@��a ���� ��i A�@Ə0T�b�0 !I֏@��a ���� �Ii A�@Ə0T�b�0 !I֏@��a ���� ,�5A�@֏0T�b�0 !IƏp�a��, a ���� ,�5A�@֏0T�b�0 !IƏp�a��, a ���� ��_ A�@Ə0T�b�0 !I֏@��a ���� �I_ A�@Ə0T�b�0 !I֏@��a ���� � _ B�A8֏0T�b�0 !IƏp�a��, a �ȈA� �I^� ����@�@ �0�c���4��#��T��PNS��PNS�֏@��a �ȈA� ��]� ����@�@ �0�c���4��#��T��PNS��PNS�֏@��a ;J,@ �� �� �������a��pC�`0�0���� ��^%�1K� 7�2F0bp v�W���#�``'|�,�,�1P�D!��@�z(�p�$��A8F�`��Խ& ��`B!0OM[b�!8̀Ӧ�`N3�&�,7m�� �&�,wo� ��<vm� ��4��#��#��#� &�,a 9J,@ �� �� �����ЕQ�$� E��,�@#�` &u���p�Q��,Ca#�` &v�$�Lj�� ��]-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3v�@N3�`!0�n� �,�]`� 0��#��#�&�,�n� ��<un� ��4��[b�!8�`��@��a 9J,@ �� �� �������Q�$� E��,�@#�` &p���p�Q��,Ca#�` &q�$�Lj�� �I\-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3�@���a!8�`� ��<�&�,vm� ��<��Əf�`��ػ&�Թ%&�� vo� ��4��a 9J,@ �� �� �������Q�$� E��,�@#�` &k���p�Q��,Ca#�` &l�$�Lj�� � [-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3v�@N3�`!0�n� �,�]`� 0��#��#�&�,�n� ��<un� ��4��[b�!8�`��@��a 5J,@� ���,C #�`"cE�$� ���,�@#�`"de� � F� ���A��2Kp��A��U2Kp TD!��@� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`">E�$� ���,�@#�`"?e� � F� ���A��2Kp��A��U2Kp TD!��@� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`�'9E�$� ���,�@#�`�':e� � F� ������2Kp�����T2Kp TD!��@�� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`�'4E�$� ���,�@#�`�'5e� � F� ������2Kp�����T2Kp TD!��@�� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 7J,@ �� �� ������T1K� 7x� ������1K� 7�2F0bP �"S�,�1bP �"S�,�1P�D!��@�z(�p�$��A8��0�c�`� ��4��#�3v�`N3Զ!&�� �m� �,Kn� ��<�&�,� &���@��Xa�!�R�a 7J,@ �� �� ������T1K� 7x� ������1K� 7�2F0bP ��R�,�1bP ��R�,�1P�D!��@�z(�p�$��A8��0�c�`� ��4��#�3v�`N3Զ!&�� �m� �,Kn� ��<�&�,� &���@��Xa�!�R�a � �X�@��Ə@0�@X?!8Ma � �T�@��Ə@0�@X?!8Ma � �`�@��Ə@0�@X?!8Ma ���� � H A�@Ə0T�b�0 !I֏@��a ���� ��? A�@Ə0T�b�0 !I֏@��a ���� � ? A�@Ə0T�b�0 !I֏@��a ���� ��> A�@Ə0T�b�0 !I֏@��a ���� � > A�@Ə0T�b�0 !I֏@��a ���� ��= A�@Ə0T�b�0 !I֏@��a ���� � = A�@Ə0T�b�0 !I֏@��a ���� ��< A�@Ə0T�b�0 !I֏@��a ���� � < A�@Ə0T�b�0 !I֏@��a ���� ��; A�@Ə0T�b�0 !I֏@��a ���� � ; A�@Ə0T�b�0 !I֏@��a ���� ��: A�@Ə0T�b�0 !I֏@��a ���� � : A�@Ə0T�b�0 !I֏@��a ���� ��9 A�@Ə0T�b�0 !I֏@��a ���� � 9 A�@Ə0T�b�0 !I֏@��a ���� ��8 A�@Ə0T�b�0 !I֏@��a ���� � 8 A�@Ə0T�b�0 !I֏@��a ���� ��/ A�@Ə0T�b�0 !I֏@��a ���� � / A�@Ə0T�b�0 !I֏@��a ���� ��. A�@Ə0T�b�0 !I֏@��a ���� � . A�@Ə0T�b�0 !I֏@��a ���� ��- A�@Ə0T�b�0 !I֏@��a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ���� � , A�@Ə0T�b�0 !I֏@��a ���� ��+ A�@Ə0T�b�0 !I֏@��a ���� � + A�@Ə0T�b�0 !I֏@��a ���� ��* A�@Ə0T�b�0 !I֏@��a ���� � * A�@Ə0T�b�0 !I֏@��a ���� ��) A�@Ə0T�b�0 !I֏@��a ���� � ) A�@Ə0T�b�0 !I֏@��a ���� ��( A�@Ə0T�b�0 !I֏@��a ���� � ( A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� ,94A�@֏0T�b�0 !IƏp�a��, a ���� ,74A�@֏0T�b�0 !IƏp�a��, a ���� ,54A�@֏0T�b�0 !IƏp�a��, a ���� ,34A�@֏0T�b�0 !IƏp�a��, a ���� �I B�A8֏0T�b�0 !IƏp�a��, a ���� �� B�A8֏0T�b�0 !IƏp�a��, a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a �ȈA� � ��Ə@NS�>�D�`��, a �ȈA� ȉ��Ə@NS�>�D�`��, a �ȈA� � �� ����@�@ �0�c���4��#��T�&��T��#OD ֏@��a �ȈA� ȉ�� ����@�@ �0�c���4��#��T�&��T��#OD ֏@��a ��A� ������0<Sa ��A� �J����0<Sa ��A� ������0<Sa ��A� �J����0<Sa ��A� ������0<Sa �b�d�@��<a �a�d�@��<a ���d�@��<a ���d�@��<a �b�p�@��pD� �a �a�p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a A, �\`d�`�n@�������`tdld{@�;�;#�`�*��A8��0<Sa A, d�\`��=�C8�<��<�C;�A=������}�l�#�`P ��A8��pD� �a ���� �G� B�A8֏`8E!��# )Ə@�Da ��A� �J��� a ���� � ��Ə0�d�2a ��A� �J���@0��a �pCPa0bp ��7�� Ap�A8Ə@<1�>��a A,@ � ������ ؊�B0��Ə@<1�>��a �pCPa0bp ��7C� Ap�A8Ə@<1�>��a A,@� ������ ؊�B0��Ə@<1�>��a A, 4�\W ��8�C:�C9�C8��:��8́���} #�` a A,@�& !P�\Î$����M���&@�@ �PX�06� 8� & ұX?�!EB 4��# Y`� Q��# )a A,@�& !P�\Î$����M���&@�@ �PX�0�PHT�#֏pH�P a� ��� &ұ���# �>��a A,@�& !P�܈A� � � �a� �A8 �PX�0&�0H�b�CD֏P �2��@0��X`� Qa A,@�& !P�܈A� � � �a� �A8 �PX�0�PHT�#&�PH��#Ə0T@d��@,`�H a A,@�& !P�\Î$����M���&@�@ �PX�06� 8� & ұ?�P��#�L��# )�0HTa A,@�& !P�\Î$����M���&@�@ �PX�0�PHT�#6�@8���`B!��?�P��#�L��# )a A,@�O6!P\Ď$����B$H0�� �PX�0F� 8� & ұ?�P��# )&�0HT`��4� H a A,@�O6!P\Ď$����B$H0�� �PX�0&�PHT�#F�@8���`B!��?�P��# )֏�,@C���a #A,@�& !P�\Î��� 2b� ��7J�0�#�`�+rd�PX�06� 8� & ұX?�!EB 4�&�,�m�CD�0HT`�H�&�,a A,@�& !P�܈A� ���# �`�+y��!�&��A� �J�� �PX�0f�`��Է & ұ?�P��#�L��# )�0HT`� �, a "A,@�& !P�\Î��� 2b� ��7 �0�#�`�+rd�PX�06� 8� & ұ�a�!�R�Ə0T@d��@,`�H�& a!�a #A,@�O6!P\Ď���M2b� ��7K$�hB�����M�A8�PX�0F� 8� & ұb�!�R�Ə0T@d� �D��@0��X?� a�b� �, a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0f�PHT�#֘P8���Ƙ`H��#�&(��D�D-Sm� �t,>b�H��#R$�@C�b�!Q��Ԇ�@8��aBHLDH�2?�Pa MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0֏pH�P a� �D>�#֘p8���>b� �t,>b��&0��D�D-S�#Ə0T@d�H�&ұ���a�HLDH�2��-& �H�#��`8���a FA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�PHT�#��`H��#�&(��D�D-Sm� �t,>b�H�)&�Hm� 1!Q�d�CD֏P �2a HA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�pHT�#>b� �t,>b��&0��D�D-S�#Ə0T@d��@,`�H�&ұ���a�HLDH�2��)& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�PHT�#֘P8���Ƙ`H��#�&(��D�D-Sm� �t,>b�H�-&�Hm� 1!Q�d� ����# Y?B1�a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�pHT�#>b� ����#Ƙ�H��#��XaHLDH�2�>b�CD֏P �2��@0��b��D>�#F���L>b� �t,>�#���HT�#��a JA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�PHT�#�P8���֘`H��#�&(��D�D-Sm� �t,>b�H��# �& )Ƙ`HT�#�%&N�#V���LƏ0T@a MA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�pHT�#>b� ����#֘�H��#���aHLDH�2�>b�CD��@0��X?� a�b� ����b�!����&,��D�D-��c"Q���>a MA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`@*O`d�PX�0V���L�&����>��b� ����Xc��D>�#��#R$�@C�b"Q���Hm� �t,>�#�&$��D�D-��# �a�!���a GA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0V���L�&����>��b� �D>�#�-& ұ����F���LƏ0T@d��@,`� �t,>�#a LA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`@*O`d�PX�0V���L�&����>��b� ����Xc��D>�#�-& ����Ƙ�H��#>baBHLDH�2?�P��#�L�&ұ���a MA,@�OPQsu��`n v@`@p�`�dl@r�{`�9��<��<�{sy��`n v@`�dl@q�ld {p�<�A��#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0f���L�&����>��b��4� H�%&N�#>b� �����Ƙ�HT�#>R[c"����m� 1!Q�d�CD��pH��#>a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0֏pH�P a� �D>�#֘p8���>b� �t,>b��&0��D�D-S�#Ə0T@d�H�!&N�#>b� �t,>�#F���L>b� �D>R�a PA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0���HT�#�����#R$�@C�aB"�����aBHLDH�2���b�D>�#>b�CD��@0���aB"Q�����XcB�D>r���c�"���>�#V���L���a HA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�pHT�#>b� �t,>b��&0��D�D-S�#Ə0T@d��@,`�H�&ұ���a�HLDH�2��)& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0���HT�#����&$ұ�����&4��D�D-�����# Y?B1��>��b� �D>�#>b� �t,>b���Xa�HLDH�2�>�#a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�pHT�#>b� ����#Ƙ�H��#��XaHLDH�2�>b�CD֏P �2��@0��b��D>�#F���L>b� �t,>�#���HT�#��a PA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0���HT�#����&$ұ�����&4��D�D-����!& N�#>�#Ə0T@d��@,`�H�&$�����5&$N�#����1&(ұ���#>b�  1!Q�T���a MA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�pHT�#>b� ����#֘�H��#���aHLDH�2�>b�CD��@0��X?� a�b� ����b�!����&,��D�D-��c"Q���>a PA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0Ƙ�HT�#����!&$ұ�����&4��D�D-����%& N�#>�#Ə0T@d�H��# �& )v��HT�#>�#昐8���>�#֘�H��#����&8��D�D-S�#>a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n���� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,t� 8b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������pn0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2�6�������4MV�������4M���L��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������pnPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� �_�O�H#�d� ��4UMaB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������pn`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������pn`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# ��`�!8MU��@NS�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L� &��T&���L��# �Y`�HLDH�2�F�`NSո&��T5o� 1!Q�d� �_�O�H#�d� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# ��`�!8MU��@NS�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L� &(��D�D-o� 1!Q˴a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� �7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,t� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6�@NSY`�HLDH�2�&���L�&(��D�D-�n� ��4U�[a�!8MU�����L��0<Sd� �_�O�H#�d� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,D� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�6�������4M&���L�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,t� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 8�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� 8Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,�� 8W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,t� 8�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,4� !8�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2�6�������4MV�������4M���L��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� )8�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� 18�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�6�������4M&���L�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 98�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8��0<Sa A,��\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8��0<Sa 2A,�� E8�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� Q8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� ]8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� �7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,t� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,D� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,t� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 8�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� 8Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,�� 8W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,t� 8�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,4� !8�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� )8�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� 18�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 98�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8��0<Sa A,��\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8��0<Sa 2A,�� E8�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� Q8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� ]8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1�Ə ��#�c��t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1�Ə ��#�c��t �a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1�Ə ��#�c��t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1�Ə ��#�c��t �a ���� ��/A�@ƏPT�B��@0��a ���� ��/A�@��@0��?BQ Ea ���� �/A�@��@0��?BQ Ea ���� �/A�@��@0��?BQ Ea ���� �/A�@ƏPT�B��@0��a ���� �/A�@ƏPT�B��@0��a ��A� ��-#�`p�0���@0��X?!�b�E,a ��A� �I-#�`;�0���@0��X?!�b�E,a ���� �- �hB�&�İQ�C8֏@<1�>��b�E,a ���� �- �hB�&�İQ�C8ƏPT�B֏@<1�>��a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ���� �N, �hB�&�İQ�C8ƏPT�B֏@<1�>��a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ��A� �.#�`�;�@� 0� ��@�@֏@<1�>��b�E,a��, a ��A� ��-#�`�;�@� 0� ��@�@ƏPT�B֏@<1�>��b��, a A, $�\U�C8��;�;�C9�������A #�`+���@�� 4a ����� �O* B�A8֏0T�b�0 !IƏp�a��, a ���� ܇)A�@��@0��X?!�b�E,a ���� �)A�@��@0��X?!�b�E,a ���� ܇(A�@��@0��X?!�b�E,a ���� �(A�@��@0��X?!�b�E,a ���� ܇A�@��@0��X?!�b�E,a ���� �A�@��@0��?BQ EX?!�a ���� ܇A�@��@0��X?!�b�E,a ���� �A�@��@0��X?!�b�E,a ���� ܇A�@��@0��X?!�b�E,q y2"�^�4�uJ�`�4�L�b�48�O�d�5Xf[�f�5xv^�h�5��h�j�6��k�l�6�fo�n�7�vz�p�7�|�r�78��t�8Xg��v�8xw��x�8�ǘ�z�9����|�9�g��~�:�w����:`����:8p����;X�����;x�����;�`Ƀ��<�p̃��<�`σ��=�ڃ��>8�郔�>X�����?x�����@�0���@����A����B��.���C�?���D8�O���EX_���FxPn���G�p}���H�����I�@����J�`����KP����K8ʄ��MX�ބ��N��턺�N��N�����OH����O������O�����O�����O8���Ph� ���P� ���P�� ���P(@���Ph����Q�`���Q�����Q(����Qh���Q�����R�)���R((�*���Rh(,���R�(�-���R�(0/���R()�8���Sh)0:���S�)�;���S�)@=���S(*�>���Sh*@H���T�*�I���T�*�K���T(+ M���Th+�N���T�+ X���U�+�Y���U(,P[���Uh,�\���U�,p^���U�,�_���V(-�i���Vh-0k���V�-�l���V�-@n���V(.�o���Wh.Py���W�.�z���W�.P|���W(/0~���WH/����X�/P����X�/И���Y�/p����Y�/����Y8�����YH8�����Zh80����Z�8�����Z�80����[�8л���[9p����[89����\X9�ȅ��\�9�ʅ��\�9�̅��\�9�΅��\8:�؅��]x:�څ��]�:p܅��]�:Pޅ��]8;0腵�^x;ꅹ�^�;셽�^�;���^8<����_x<�����_=P ���`�=����aX>�(���b�>p/���c�?�>���c�?H���d�?�I���d(H�K���dhH�M���d�H`O���e�H@Y���e(I [���ehI]���e�I�^���e�I�h���f(J�j���fhJ�l���f�J�n���f�J�x���g�J�z���g(K�|���ghK`~���g�K@����h�K ����h(L����hhL�����h�L�����i�L�����i(M�����ihM`����i�M@����j�M ����j(N����jhN����j�N ����k�N@����k(O@����khO ����k�O����k�O�Ȇ��l(X�ʆ��lhX�̆��l�X�Ά��l�X`؆��m(Y@چ��mhY ܆��m�Yކ��m�Y�߆��n(Z�醤�nhZ�놨�n�Z�n�Z`�o([�����oH[�����oh[����o�[@����o�[�����o�[����p\P ���pH\� ���px\� ���p�\���q�\����q�\`���r]�)���r(]p-���rh]�9���s�]>���t�]M���u�]�^���v�]�o���w^�����x(^p����zH^ଇ��{h^�����|�^�؇��}�^0���~�^@������^ ��̀_�����(_�����H_@����h_@-�����_p<�����_�K����_`X�����_�[��օh�h��ֆ(h`x��ɇHh�����hh�������h ���҉�hP���Ŋ�h������hp�����i����(i0�����Hi0�����hi`������i�������iP���Џ�i�������i� ����jP����(j�*���Hj�9����hj=�����j@L�����j�X�����j`\����j�_����k k���(k {���HkP���՘hk����ș�k@������k�������kp������k@�����lp�����(l�����Hl�����hl0������l����ٟ�lP������l� ��Ơ�l����m����(m@-����Hmp<����hm0I�����m�L����m`Y����m0i��֦�m`x��ɧn�����(n����ߨHn ���ҩhn������n���Ϊ�n�������np���ޫ�n�����o����ޭ(oP���ٮHo������ho@���ү�o���ڰ�o���ձ�o�(��в�o@8����x<����(x�K���Hx�X����hx�\����x�h�����x@l�����x�|�����xp�����y �����(y`�����Hy����hy`������y������y`������y������y������z������(z� ����Hz�����hz������z������z`.�����z=�����z�K����{�X����({�\����H{�i����h{y�����{������{p������{p������{ �����|�����(|�����H| �����h| ������|�������|P������|������|������}������(} ����H}P����h}+�����}�9�����}�=�����}`L�����}@Y����~P]����(~`i����H~`m����h~�|�����~�������~@������~0������~0�����P�����(������H@�����h����������������������������������� ����(������H� (����h��.�������=������pJ����ȈpN����舐[������j����(��y����H�0�����h�0���������������П����ȉ�������Ю����(�p�����H������x��������������@������������(������H���������������ȋ`������ �����H�������] ���<threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_80_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64llvm.nvvm.associate.access.property.p0i8.p0i8llvm.nvvm.memcpy.async.p3i8.p1i8__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z16__isGridConstantPKvllvm.nvvm.isspacep.grid_const_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z31__cvta_generic_to_grid_constantPKv_Z31__cvta_grid_constant_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj_Z16__match_any_syncjjllvm.nvvm.match.any.sync.i32_Z16__match_any_syncji_Z16__match_any_syncjmllvm.nvvm.match.any.sync.i64_Z16__match_any_syncjl_Z16__match_any_syncjy_Z16__match_any_syncjx_Z16__match_any_syncjf__float_as_uint_Z16__match_any_syncjd__double_as_longlong_Z16__match_all_syncjjPillvm.nvvm.match.all.sync.i32_Z16__match_all_syncjiPi_Z16__match_all_syncjmPillvm.nvvm.match.all.sync.i64_Z16__match_all_syncjlPi_Z16__match_all_syncjyPi_Z16__match_all_syncjxPi_Z16__match_all_syncjfPi_Z16__match_all_syncjdPi_Z11__nanosleepj_Z9atomicCASPttt__usAtomicCAS_Z17__reduce_add_syncjj__reduce_add_sync_unsigned_impl_Z17__reduce_min_syncjj__reduce_min_sync_unsigned_impl_Z17__reduce_max_syncjj__reduce_max_sync_unsigned_impl_Z17__reduce_add_syncji__reduce_add_sync_signed_impl_Z17__reduce_min_syncji__reduce_min_sync_signed_impl_Z17__reduce_max_syncji__reduce_max_sync_signed_impl_Z17__reduce_and_syncjj__reduce_and_sync_unsigned_impl_Z16__reduce_or_syncjj__reduce_or_sync_unsigned_impl_Z17__reduce_xor_syncjj__reduce_xor_sync_unsigned_impl7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! |z !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQl� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@�� ����� ��:���� ��ށ���a~��!�a�������@�l X6�,�$� �b��X�@0 �f� �3b��x�@@ �� e �����H5��=�C;�A8��;�=�=��;��<�=�C8��<�;��;�C9��� ������5������ �����!�!�����A����!܁ʁ� c@�����H�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9� �`a�����HI�`� �A&�1ad�$�@�0�2af$K3�ƙP��<�@ah�DɄ��H�iB@M�h�T�`� �"�gB`M*�� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��2TP��� 5 "PA1� 1��8F�"J�|��� Ȍk�)��ɧ��jPP4(�4����&_8��F�a ( 6����&� ��@ep� �c�)��� ��@" (���F�"J�|J8��FPP:(����i�(a��pDP@�� (����i�(a�)�"P@�Ѓ (����#�����&_:�h�Q�G���8G�"J�|J:�h�Q�G��F�"J�|�p��FB}���>��BΑ��&��'�l$��G�B�i�(a�É� }��G!飏>h�s�)��ɧ�É� }��G!飏>ȑk�)��ɗ'�pD��G}��>����i�(a�)�p� GD}��G)&飏>� Jn���&i���c�)��ɧ�f�Q@2�4�E�"J�|��l$@8��i�(a�)��l$@>�i�(a�f��B�F)D�r�4E�0�H3�(�)��1�Q��SH3�(�*��1�Q��/Nc�(0��@�\#M%L>�8�Q���"�b�r�4E�0���6 0� �`�r�4E�0���4�� (�-@�#M%L��4ƍ 0��`���5�Q��S��7 0��B�b�P/�HSD ��8��#� 0��`�0�HSD �O-Nc��0� (�0`�4� �5�Q���L5 �)�1��1�HSD �_,0�H(��2$SL1��5�Q���L7�)��B0SL1�P3�HSD �_,0�(��b�)�3�SL1�A�Q��/Nc,Nc�(0��@�\$M%L>�8��8�Q���"TcYs�4E�0�����6 0� �`es�4E�0���4��4�� (�6@�$M%L��4��4ƍ 0��`���E�Q��S����7 0��B�c��8ISD ��8��8��#� 0��`�P9ISD �O-Nc,Nc��0� (�9`����9�Q��,D�u���:��9�Q��,��u�)�;�C�#M%L��P�B�hPGu �:�C�#M%L��P�B��PGu�)=ꨣ�:TO���O!� h�RT@��b�"�T ���PL1TP�Q�*C1�C ���b��ʠ�:PCTL�)�!�� ��IT�b�1�(*D1��YT�!� QL1�C�bz�8*C1C�Au�!�ʠ�:�HeP�u��2`�dRPB� �<T �T0�X*� `�T ( ��$S)�QGu � ��:�C6Bu��p*�@:��u ��`�:�S�1��@B�A �ʠN1�Q�N�AJJ�P@KA� ��"P=U�+���p�TF@�BTZ�U���*FU�V�(�b��*B1�W�0��*�:�$V h��*�Y�G�@�Ң5���Z��Q�;ܢ���"�E���.���Ex�)E8E/ڋ�)6}�_�F��#=���`DR�C ��h�"L�)F��ƨ1R��<F��6E�F2���<D�A��2J��dF��3Ex�3��)�;�he��H�2\QDZ�@�2� W(�V�+�Z�T+�n�A��ኸ!��p]�le��.NH�2\��)D[�� �� W��V�+Ӄt+��B����&!��pc�pe��1UH�2\!�6D\�x�2� W �!W�+2K��+��=C̕���!��te�bH�2�:D]!Ⱥ2T�]!�H�2T��]!�ȻB�: x���>� ��(b�*�E@�J� �W�ԡ����Z��!��[$�����E���>����E���H�"ħ�g (�}�E@0 �� F�>è�"ܗX����c�`���4B1����BCSL1�AB�hB#��N*��,,�@⊵�4,�n���"�>� �q]}��Gb!�� H�b\��X�+�2�2�W�b1� �T,�����X�+룏>�  qc@0��H�B\!����"�b�!�qg�SL1�c!��LuHG,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �a��0;��{ � �e�p�c0 � �H�`��q�b0�($r�8j1�`��`� @���\0�[  ��L..��'�#��v@~� ơ��@;������` �|�q�b0�(�r�8z1�`$v�`� @�ڿ\0�_  ��b� ���@;�� r�8�1�`d�A.�8�~5���` ���`� @�������v@��r�c0���Y@�|  ��x@ ȡ��@;�qd9�1�`T��+�9�FPp�8�` �P, �`� @��I��#��v@�)��q�c0�hOW0�u  ���� ����@;��\�8�1�`TƂ+�;��Yp�x�` �Ph �`� @�zq��#��v@�.��q�c0�h�W0�y  ��� �A��@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��m� @ �f��q�`�4��� @ �d�x��!R�P:p0D�_b�H!LD�@�I��HP"�1!� C�:&$|�`�t�Ĵ4 �t����!�:�Hp0D�g"* �H,MH(@�ɧ i%P"�51� C��&���`�d�E4 �ԛhn��!�}�N0D2q�� �H4N@`@��̉g,"�9�C$R' � `�D넴 �̝x���!R�P\0D*y� �H5ODw@���H/"�=!�C��'$� `����4 �ܟ�N��!���j0Dz�Bj �HaXL�@���i6"�bA�C�],�� `��E� �H��~��!RN�x0Dz��*�H�Y\�@��7��="�g!�C��,&� `�$�U �̴����!���}0D��B��H�Z@�@�iW��>�"�j!�C$x-�� `�į�� �T�`���!���}0D�����Hl[0�@� o '?"�n��C$�-�� `����� �з����!R�S~0Db�"��H=\L�@� � '?"�q�C$W.�� `���� �عp���!�>P~0DR����H8]@�@� ��)?"�uQ�C$�.�� `�4�E� ��`���!��~0D����H<^0�@� � �?"�y��C$R/�� `�$�� ���X���!Һ�0D��b �H _$!@�)�%D"�|��C$�/�� `���E�@ ��`B��!��H�0D:�� �H�_$!@�����?"���C��/� `�d��"@ ���HB��!� H�0DrA#��H7h �@���$D"��q�C�74� `���"@ �@�8F��!�)ň0DbE��H�h%@�I��D�"��q�C$s4� `���R" ���@J��!�>E�0D�G#)�H(i%@��% �D"٤Q�C��4� `�4��"@ ���@V��!�[ʊ0D�Ki�H�i$-@�I5��D"ŦA�C��4� `�䛆Q"@ ���HR��!R{E�0D�OC��H�i0@�)D��D"��A�C$5 `�t��!#@ �z�PV��!ҙƊ0DjS)�Huj%@�IO��D"��A�C�R5� `�ԪFQ"@ �d�@J��!��E�0D�U�(�H�j%@�I] �D"ɫQ�C�{5� `���FQ"@ �H�PR��!��F�0D�Y�(�H;k%@��g �D"��Q�C$�5� `�D�FQ"@ ���H���!���0DB]cY�H�k+@�Iw �F"����C$�5� `�d�FQ"@ ���HJ��! F�0DRa)�H2l%@�醍�D"��a�C$36� `��ƆQ"@ ���HJ��!�F�0D"e#)�H�l%@�i� %E"��a�C�q6� `���FQ"@ ���8J��!�=D�0D�g)�H#m%@� � �D"ɴq�C��6� `�4��Q"@ ���hR��!�]I�0Dm�I�H�m()@� � 'E"����C$�6 `����a#@ �H�HJ��!R�F�0D�qC��H=n8@��̍G"����C�;7� `��Q"@ �L�@J��!��E�0D�u#��H�n8@�I� G"��q�C�y7� `��R"@ �T�HR��!��E�0D�y#��Hao:@���$E"��Q�C��7� `���F�"@ �B�HJ��!��F�0D�}#)�H�o%@�����D"��a�C$�7� `�t��Q"@ ���HJ��!� F�0Db���H<x$<@�� �G"��q�C$=<� `���P"@ �F�0J��!R*C�0Db����H�x >@���D"��1�C�_<� `�T��P"@ ���8|��!�;��0D��C*�H$y8%@�I&�D"���C$�<� `�ė�Q"@ �F�XJ��!�kH�0D���)�H�y,%@� >��D"�灔C�=� `�Ģ�Q"@ �d�h���!ҏ��0D:ӣ!�Htz�@� O�>"���C$T=3 `��Ga&@ �j�@���!R���0D�1�H�z f@�i^�L"�끘 C��=3 `���b& �f�@R��!����0Dۃ �Hg{ d@��mL"��A�C��=�� `�4�r �V�@���!����0D��1�H�{f@��|�L"� C$�=3 `��b& �L�@���!� ��0D��I�H>| b@�ɌBL�"�� C$9>0 `���ǃ& �R�`���!R-�0D"�A �H�|<h@�韏M"��� C��>4 `���G�& ���h���!�j��0D���Q �H�}<h@��M�"��� C$?4 `���ǃ& ���`���!R��0DB��A �H�~<h@�i�M�"��� C$?4 `���ǃ& �r�`���!R��0D���A �H�8h@����M�"��� C��?4 `�$�ǃ& �Ba���!R "�0D�A�A �Hh�@ C$<D���!)"�@��f `����& ��q���!R?"�0DrI�a �H=�@n@��-�M�"�%r� C$�D 9 `�t��'8 �\)���!�l"�0DZO� �H� v@�i?�N�"�(�� C�E0< `�4�H"&@ ��I���!R�"��0D�S$ �H��`x@��W�DL�"�+�� C�xE1 `���H"&@ �F����!��"��0D"[$ �Hm�$b@��n�DL�"�-�� C��E� `�ľ�"@ ��yB��!� #O�0D�a���Hx�@!@� �(D�"�2�C$tF� `����' �hq���!�X#��0D�k�� �H~�8~@����O"�7�� C��F? `�����'@ �ny���!��#�0Du� �H��8�@���GT�"�;� C$}G<P `����#*@ ��yD��!��#��0D*}� �H��x�@�I���T"�`�@�)�GM"�b¨ C$VL6 `�����&@ ��1y���!>&�0D2��a�H5�4l@�I,�M"�e° C$�L6 `���I�&@ �p3y���!�y&�0D���a�H$�8l@�IF��M"�i� C�7M6 `�ԧI�&@ �T5y���!R�&�0D:��I�H��0�@�Id M"�l"� C$�M.4 `��Ʉ&@ �h7����!��&�0D���B�H3�Lh@�Ɍ�M"�qB� C$XN.6 `�t�I�&@ ��9����!�L'��0D"��R�H{�Lj@�ɵ+U"�w"� C$�N�T `���ɔ*@ ��<����!��'�0Dj��B�H�\h@�Iߓ M"�|2� C$�O04 `��� �&@ �`?����!��'�0D��C�H2�Ph@�� ��M"��R� C$YT06 `�����&@ �@R����!�M*��0DRKS�H��Pj@��6 M"��"� C$�T.4 `�T�ʄ&@ ��T����!��*�0D�U�b�H�Tl@��_ M"Ѭ"� C$�U.4 `�Էʄ&@ �`W����!��*�0D�_�b�H1�Tl@�Ɍ M"�"� C$WV.4 `�T�ʄ&@ ��Y����!�K+�0Dk�b�Hy�Tl@�ɵ M"��"� C$�V.4 `���ʄ&@ ��\����!��+�0DRu�b�H�Tl@��� M"��"� C$�W.4 `�T�ʄ&@ �P_����!��+�0D��B�H'�Lh@�I�k `����0D�["��2-@ ��q��H%�H C��\���!�[.�@�I4��M"��B� C��\07 `�T�K�&@ �tt����!�.�0D��B�H��Lh@��]�M"��2� C��].6 `�Ķ �&@ �@w����!��.�0DB��B�H��Lh@�I��M"��B� C$>^.6 `�4�K�&@ ��y����!R?/�0Dr��B�Hd�Hh@�ɮ��M"��"� C��^,6 `�4���&@ �L|����!Ҏ/�0Db��B�H��Hh@��֗�M"��2� C$~_,6 `�$� �&@ ��~����!�/�0Dr��B�H�Lh@� ��M"� 3� C�0d.6 `��� �&@ �X�����!�82�0D�G�B�H+�Lh@��'�M"�%C� C$�d.6 `���L�&@ ��QV�!�2��0D2Q�Z �H<�Lr@��M Np"�*� C$Ze&8�`�t� $'@ ����!�2Y��0D [&��Hr�d���iu�)"�.�� C$�e�8 `�T� �*@< �z�����!3]��0D�e�{�H��|�@�饙0x�Hp�x�@�ɵ��"�7��C$g�Z `�t� W  �F�1�W `��� �C��g�� `���L�@@ �ʞ�b��!�3V�0Dr}F��H��h�@�I�'V"�`s� C$4l�� `����d+@H �V�����!�.6�}0DZ�f��H��DC��l&\ `�$�ͥ+@H ��p��!k6�0D����H��`�@� F W"�is� C�?m.\ `�d���+ �ҵq���!ҽ6��0D*����H;�`�@�in��W"�n3� C��m&p `���. �L�����!7�0D���H��\�@�i�� \"�s3� C��n,q `�4� &. �������!�l7�0D*�f�H��X�@��� \"�y�� C$>o0p `�D��. �ֽ����!��7 �0Dj�f!�H8�,���i��\�"�}�� C��o��!�7 �0Dz�b�H��@�@����H^"��� C�t| `��γ/ ��С���!�(:��@0DrEgI(�H��,C$rtr `��N2 �@҉H��!RL:��0DKGR�Hu�@-@��4f"զc� C��t�� `�d��r3 �Bԉt��!��:Q�0DSG�Hu�0�@�)T�\"��Ø C�\us``�T��.L ���a �H��0�@�)e��]"�� C��u$y `�Է�T/ �^ׁ���!��:о0Dz_���H$�0�� �&]�"��@ ���a���!;R�0D2eG"�H��L'@�i��Ie"��� C��v"� `���53 ���aj��!�h;��0DzmG��H��H=@�i�� l"��Ð C$wr `���c.L ���a�� �!��;L�00Du��"��Ð C$]w"v `���N�. ��ݑ���!��;R�0D{��Hp�@�@� ���_"վØ C��w�t�`���0D��!�H%�H!@���d"��3� C$>|&� `��O�2 ���`��!R<>��0DBɇ��H4�07@� ,Ig"��#� C$�|&� `�t�C. ���a���!�{>��00D�χ1&�H'�0���iF `���C. ������!�>ѻ0Dj�G��H��H�@�)^_"��� C��}* `�d�c.P ���a� �!��> @�Iu�\"��#� C$�}$� `����t2 �Z��T��!?Q�0D��'��H��\3@�)��f"���� C�x~$� `�4ҏ�3 �j�����!Z? �0D��!�H��0������\�"��ä C$�~��!|? �0D��'b�H-�D�@���I^"��#� C$Q | `�$��/ �������!ҽ?��@0D��I(�H/�0C��r `�t��2 ����H��!��?��0D��gR�H��D-@�I�f"� t� C$5��� `�d�s3 �D�t��!-BR�0D2Gh�H�1�@��$!�\"�$Ę C���s``����.L ��b �H� 1�@��5��]"�&� C���$y `���T/ �f����!ҘBо0D�S���H� 1���V!&]�"�+�@ ��b���!�BR�0DRYH"�H< M'@��m�Ie"�.� C�م"� `�D��53 ��bj��!� C��0D�aH��He I=@�鎡 l"�2Ĉ C$[�� `�$�C6T ��b�� �!�>C��P0D2i�A�H2 1b@�ɧ!Im"�5$� C$ц&� `�T��7 ������!R~C�0DRqȲ�H`1d����!�l�"�9Ġ C$R�� `��Є7 ������!��C�0DRy���H>I�@� �!It"�>��C$݇� `�d��: ���T��!R F�0D���r�Hl1b@� #Fl"�bĐ C$X���`�ċc6T ��1b���!=F��0D�HR�H2Il@��,��m"�e4� C$Ռ"� `���QD7 ��3����!��F �`0Drш1,�H:1h@��L#Fl"�i4� C�R�&� `����7 ��5����!�F�0D��H�Hda�@��o#�t"�nĠC$ڍ&� `�t���: ��7�\��!� G��0D���Hf1d@�I�#�l�"�qĘ C$U�� `�d�#6 ��9����!=G�0D2�hr�H9Mp@����Hn"�u� C$׎,� `�D�C6X ��;b� �!G �0DB��H4Mx@��̣Io"�yD� C$W�(� `�$�: ��=�D��!��G�0D���1�Hj1�@���Iu"�~4�C$ޏ(� `��#6 ��?b���! J �P0D�A�!*�H`(1f@�� %m"�Ĉ C$R�$� `�d���6 ��Q����!�>J�0DrI)��H?)Et@� .%�n"��Đ C$ٔ��`���6 ��Sb���!�}J�0DJQi��H<*Q|@� N%�o"��$�C$[�$� `���F: �@VbL��!�J �0D�YiR�Hk+M�@��o%�u"ɮd�C$���� `����� �jX����!K�}0De�� $�H�,Y�@���% v"����C$��,� `��ג; �d[�`��!zK��0D�o�� �H-.Y�@�i�%�O�"ݹ��C�W�8�@`���f; �F^�t��!��K� 0D�{ ��H�/a�@���%Lw"����C��0� `��+ ��p��� �!�+N��p0D����H�8}�@�I&��>"����C$Ԝ�� `����w@ ��s����!R�N�}0D����H�:u�@��\��>"����C$���� `���w@ �`w����!��N�}0D"���H;<}�@���� wY $2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B)b0E �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �alignF&0��b0��b0���0��0���0��b0���0�`�0���0� �0��b0�P�0���0��0���0��b0���0�P�0���0��0�@�0���0�!1��$1��%1�`(1��)1�+1�`-1� "z1��b0� "{1� "�1� "�1� "�1� "�1� "�1� "�1��.�5�/�5�0/�5�`/�5��/�5��/�5��/�5� 2�5�P2 6��2!6��2"6��2#6�3$6�@3%6��3(6��3)6�6*6��.26�/36�0/46�`/56��/66��/76��/86� 2=6�P2>6��2?6��2`6��2a6�3b6�@3c6��3f6��3g6�6h6��.p6�/q6�0/r6�`/s6��/t6��/u6��/v6� 2{6�P2|6��2}6��2~6��26�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3 7��3!7�6"7��.*7�/+7�0/,7�`/-7��/.7��//7��/07� 257�P267��277��287��297�3:7�@3;7��3>7��3?7�6`7��6h7��b0��6i7��b0��6j7�7k7��b0�07l7�P7m7��b0�p7n7��7s7��7t7��7u7��7v7�:w7�0:x7�P:y7��:|7��:}7��:~7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6"� ��#oC��Bܔ`0�07&� �� #w���B޴`0��7.� �� #��B��`0�0:2� �� #�c��B��`0��:8� � 3 E �0�1À� C3 Jp�0,3��� �03 O��0@A4� � �D3 T�0TA4�`� �03 X�0dA4à� �D3 \�0tA4��� ��� C`0� �0�A3 d�� C`0�`�0�A3 h3 i3 j3 k03 l03 mD3 nD3 o3 p3 q3 r03 s03 tD3 uD3 v03 wD3 xD3 y3 z3 {3 |03 }03 ~D3 D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 03 !03 "D3 #D3 $3 %3 &3 '03 (03 )D3 *D3 +03 ,D3 -D3 .�� L11� AL�0�D@3 5�� �M71À�M�0�D�3 :�� �N11��M�0�D@3 >�� �O71�M�0�Ep3 b�� �X/1�@AL�0�E3 f�� �Y41À�M�0�Ep3 j�� �Z11��AL�0�E@3 n�� �[71��M�0�E@3 r�� �\71�@�K�0�E3 v�� �]41ÀM�0�Ep3 z�� �^/1��AL�0�E3 ~�� �_41��M�0�Fp3 ��� �h71�@�M�0�F�3 ��� �i11ÀM�0�F@3 ��� �j71���K�0�F3 ��� �k41�M�0�Fp3 ��� �l41�@�M�0�Fp�3������������������������������������������������������������������������������������������������������������������'b b b b b b b b b b b b�n�n�n�n�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�2��t������\�������F j#!7;�6�07�7�0��7��QT�6n7rC7v�7z�7~<�C<ƃ<��<�=�C=փ=��=�>�C>�>��>�?�C?��?��?�DBDDF�DJ�DNERDEV�EZ�E^FbDFf�Fj�FnGrDGv�Gz�G~L�DLƄL��L�M�DMքM��M�N�DN�N��N�O�DO��O��O�TBETF�TJ�TNUREUV�UZ�U^VbEVf�Vj�VnWrEWv�Wz�W~\�E\ƅ\��\�]�E]օ]��]�^�E^�^��^�_�E_��_��_�dBFdF�dJ�dNeRFeV�eZ�e^fbFff�fj�fngrFgv�gz�g~� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,T� � �d��\֏������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`��������4M�������4Ma A,�� � ��6C�A8 ��\Ə`��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,� � �d��\֏������4Ma A,D� � ��6C�A8 ��\Ə`�������4M��������4Ma A,t� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,4� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,d� � �d��\֏������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,$� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,� � �d��\֏������4Ma A,4� � ��6C�A8 ��\Ə`�������4M��������4Ma A,d� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,$� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,d� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,$� � �d��\֏������4Ma A,T� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma Ĉ�� ܇� �pC`f0��,�0K0 TD�B�@�0�c�`�A`���4��#�,a YE,@��P#EzAPF�}@�^�T�xApr2b` ��BpAp r2b` ��BpAp2���2B0K T�p2���2 D0K@ T� �pqQ�*\ �f1�`NSٽQ&$@#�����]& ұX`� �E&$@#�����=&��Twm� ��4Սd� 0�5&�,6o�� f�`NS�U&��T8m� ��`4n� ��4�m� ��4Un� ��4o� ��4�&��T5n� ��4U��>B?BXa!�n� ��<wn� ��4�M�b�!8Meۖ�@��c�!8Me�a Ĉ�� ��� �pC`f0��,�0K0 TD�B�@�0�c�`�A`���4��#�,a YE,@��P#EzAPF�}@�^�T�xApr2b` �qBpAp r2b` ��BpAp2���2B0K T�p2���2 D0K@ T� �pqQ�*\ �f1�`NSٽQ&$@#�����]& ұX`� �E&$@#�����=&��Twm� ��4Սd� 0�5&�,6o�� f�`NS�U&��T8m� ��`4n� ��4�m� ��4Un� ��4o� ��4�&��T5n� ��4U��>B?BXa!�n� ��<wn� ��4�M�b�!8Meۖ�@��c�!8Me�a ���� ��� ˆ�� ��B�@��Ə֏��P����@��a [A,@��EzAPF�}@�^�T�xAPJ����^�������}�������}�` �� � #�`p$�)Ȉ�� ܇ BpApqQA+\ �f5�`NSٽe& ұX`� �A&��T7n� ��4խ�d�!8Mu���0�`� ��4��f��D&�PNS�f�`NS�&��T��`NSյ&��T�%&�շ)&��T5n� ��4o�`� �, n�`4n��`�A`� �,�}[a!�n� �, ��e�!8M�߆�`NS�&@3Դ-&��T�m� ��4��[c!�a ���� ��~ ˆ�� �B�@��Ə֏�`�����#�,>Ra ���� ܇~ A�@��Ə֏@��a [A,@��EzAPF�}@�^�T�xAPJ����^��@@���}���@���}�` ���#�`p$�)Ĉ�� ܇ BpApqQA+\ �f5�`NSټe& ұX`� �E&��T7m� ��4�me�!8Mu���`��ػ�# @3�e�!8M��v�`NS�a&��T�n� �,˭�`4n� ��4�m� ��4Un� ��4o� �YbB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o�`�A`��`� �tD�U&�,�m� � 5m� �,�9&��T� a ���� �� ˆ�� �G�B�@��Ə֏��P����@��a ZA,@��EzAPF�}@�^�T�xAPJ����^�������}������}��\�������}�` � #�`p#�}�� D�p5�A85�`NSٽe& ұX`� �A&��T7n� ��4խ�d�!8Mu���0�`� ��4��f��D6�@̀�`B!8MeaB!8M�[bB!Q}�aB!8M�`!8Me� ��4U]�b�!8MU���`��ܷY&��Txo� ��4U��>B?BX?B Xa!�n� �, n[e�!˂�v�`NS�&@3Դ-&��T�m� ��4��[c!�a ���� �G� ˆ�� ܇�B�@��Ə֏�`�����#�,>Ra ���� �� A�@��Ə֏@��a ZA,@��EzAPF�}@�^�T�xAPJ����^��@@���}��@���}��\��@@���}�` �#�`p#�}�� D�p5�A85�`NSټe& ұX`� �E&��T7m� ��4�me�!8Mu���`��ػ�# @3�e�!8M��v�`NS�a&��T�n� ��4�m� ��4Un� � �&��T�M&�,�n� �YbB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o�`�A`��`� �tD�U&�,�m� � 5m� ��4�}[c!�a Ĉ�� ��� ˆ�� ���pC�f0��,�0K0 TD B�@ �@N3`� 0��#��#��#��#�,��#�,a sE,@��P#UzAP��}@!�^���xAP�����^�������}�������}�` �� � #�`p%�)Ȉ�� �� BpAp2���2B0K T�p2���2 D0K@ T� �pqQ-\ �fA֙�������0H�b� �tD����������0�`� ��4�m� ��4Un� ��4o� �,�}[`!8Me� ��4U]�b�!8MU㶏ƏF�`����#�Y&�,8o� � 5m� ��4�m�c!�b� ��4���c�!8Me��`NSݸI&��T�n� ��<6�`NSݼq&��U&��T8n� ��e�!8M��F�@̀�bB!Q}f�!8M�׶�`NS�&���`NS�}&��T� a Ĉ�� �� ˆ�� �G��pC�f0��,�0K0 TD B�@ �@N3`� 0��#��#��#��#�,��#�,a sE,@��P#UzAP��}@!�^���xAP�����^�������}������}��\�������}�` � #�`p$�}��pC h0��,�0P�vH��pC@ h0�0�,1P�|00�� D�p5�A8A֙�������0H�b� �tD����������0�`� ��4�m� �,�}�aB!8M�[aB!8M�[`!8Me� ��4U]�b�!8MU㶏Ə֏F�`���Y&�,8o� � 5m� ��4�m[c�!8Me��@���c�!8Me��`NSݸI&��T�n� ��<6�`NSݼq&��U&��T8n� ��e�!8M��F�@̀�bB!Q}f�!8M�׶�`NS�&���`NS�}&��T� a � ���}�_ d��Ə֏�0�`��, a aA,@��EzAPF�}@�^�T�xAPJ����^�������}��!Ȉ�� ܇BpAprbB� � #�`p*�}�%� D�p5�A8<�`NSټu& ұX`� �I&��T�m� ��4Սe�!8Mu�f�`NSݼ]&��Two�� ��`NS�i&��T�n� ��`4n� ��4�m� ��4Un� ��4o� �tD�m� ��4�!&��Tum� ��4U�g�!8M�۶�`NS��#��#��#�&�햙`���5& �0XeB ý�aB4CM�b�!8Me�Ƙ`NSٸ9&��Tvn� ��4��[d!�a A ���}�W d��Ə֏�0�`��,��a aA,@��EzAPF�}@�^�T�xAPJ����^��@@���}��!Ĉ�� ܇BpApqaB��#�`p*�}�%� D�p5�A8<6�`NSټu& ұX`� �Q&��T7m� ��4�m�e�!8Mu߆�`NSݹ�# @3�f�!8M�Ӷ�`NS�q&��T8n� ��`4n� ��4�m� �,��aB!8M��aB!8M�[bB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o� ��4U��>B?BX?B Xa!�n� 0 V�P�p�v�P�P���`NSٴA&��T�m� �,�I&��T�a � ���}�_ d��Ə֏�0�`��, a `A,@��EzAPF�}@�^�T�xAPJ����^�������}��!Ȉ�� ��� �}�E�9� \�\������}�` ��'���l�@<�`NSټu& ұX`� �I&��T�m� ��4Սe�!8Mu�f�`NSݼ]&��Two�� ��`NS�i&��T�n� ��`4n� ��4�m� �tD�m� ��4Un� ��4�!&��Tum� ��4U��aB!8M��f�!8M��ƙ`NS��#��#��#�&�햙`���5& �0XeB ý�aB4CM�b�!8Me�Ƙ`NSٸ9&��Tvn� ��4��[d!�a A ���}�X d��Ə֏�0�`��,��a `A,@��EzAPF�}@�^�T�xAPJ����^��@@���}��!Ĉ�� ��� �}�E�9� \�\@�@���}�` ��'���l�@<6�`NSټu& ұX`� �Q&��T7m� ��4�m�e�!8Mu߆�`NSݹ�# @3�f�!8M�Ӷ�`NS�q&��T8n� ��`4n� ��4�m� �,��aB!8M��aB!8M�`!8Me� ��4U][bB!Q}�b�!8MU릘`NSո1&��T5o� ��4U��>B?BX?B Xa!�n� 0 V�P�p�v�P�P���`NSٴA&��T�m� �,�I&��T�a � ���}�_ 7x`� �� ��@@� d �0�c�`�A`��`�0 �@N3�?!�a yE,@��P#UzAP��}@!�^���xAP�����^�������}��!Ȉ�� ��BpAprbB� � #�`p+�}�%�pCP h0��,�0P�~X��pC� h0�0�,1P��00�� D�p5�A8H�`NSټ�&$@#������& ұ�`� �y&$@#�����M&��T�m� ��4Ս[e�!8Mu�֙0�c� ��4��f�!8Mu��P̓��0�`� ��4^�f�!8M��V� 8�&@3�6�PNS�V�PNS妘PHGT�v�PNS��@NSYb�!8MU׶�`NSո}&��Tym� ��4��>B?BX?B �a!�n� �, ��h�!8M���0�`� ��4UޛeB ýbB4CMc�!8Me�֘`NSٸ=&��Tvn� ��4���d!�a � ���}�_ 7x`� �� ��@@� d �0�c�`�A`��`�0 �@N3�?!�a yE,@��P#UzAP��}@!�^���xAP�����^�������}��!Ȉ�� �BpAprbB� � #�`p(�}�%�pCP h0��,�0P�~X��pC� h0�0�,1P��00�� D�p5�A8H�`NSټ�&$@#������& ұ�`� �y&$@#�����M&��T�m� ��4Ս[e�!8Mu�֙0�c� ��4��f�!8Mu��P̓��0�`� ��4^�f�!8M��F�@̀�`B!8Me[aB!8M��bB!Q}�aB!8M�[`!8Me� ��4U]�b�!8MU���`NS�q&��T8o�`�A`��`� �tD�i&�,xn� ��4U��c� ��&��Tyo� 0 �n� � 5m� �c�!8Me�֘`NSٸ=&��Tvn� ��4���d!�a ���� ��� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�@��a ���� ��~ �p1�����Q�D8 ��0�c�`�A`���&��T��#�,>b� ��4a ���� �� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�@��a ���� �G� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�`���a bA,@��UzAP��}@!�^���xApr2b` ��BpAp r2b` ��BpAp r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<��`NSٽ]&��q& ұ�`� �A&��Twm� ��4�}e�!8Mu�&�0�c� ��4���d�!8Mu��`��ؼ& @3�e�!8M�Ӗ�`NS�a&��T�m� ��`B!8Me[aB!8M�a4n� ��4o� ��4��#OD ��b�!8MU㖘`NSպi&��T8o�`�A`��ÿ8f�@HG��f�!8M�Ӷ�`NSٴ1&��T�m� �,�5&��T6a bA,@��UzAP��}@!�^���xApq1b` ��BpAp q1b` ��BpAp q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<�`NSٽq& ұ�`� �M&��T7m� ��4�][e�!8Mu�f�`NSݺI& �f�!8Mu��`��ظe&��Two� � ��`NS�m&��T8n� �a4n� ��4�m� ��4Un� ��4o� ��4�!&��T5m� ��4Um[?��D���-&��T�n� ��4U��>B?B�a!�n��ÿ8v�P�s�֘`NSٴ)&�,��`NSٹA&��T�a bA,@��UzAP��}@!�^���xApr2b` ��BpAp r2b` ��BpAp r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<��`NSٽ]&��q& ұ�`� �A&��Twm� ��4�}�d� 0�U&��T7o� ��4Սe�!8Mu��`��ؼ& @3�e�!8M�ӆ�`NS�e&��T�m� �a4n� ��4�m� ��4Un� ��4�&��T��#OD ��b�!8MU㖘`NSպi&��T8o�`�A`��ÿ8f�@HG��f�!8M�Ӷ�`NSٴ1&��T�m� �,�5&��T6a bA,@��UzAP��}@!�^���xApq1b` ��BpAp q1b` ��BpAp q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<�`NSٽq& ұ�`� �M&��T7m� ��4�][e�!8Mu�f�`NSݺI& �f�!8Mu��`��ظe&��Two� � ��`NS�m&��T8n� �a4n� ��4�m� ��4Un� ��4o� ��4�!&��T5m� ��4Um[?��D���-&��T�n� ��4U��>B?B�?��D��/�&��v�P�s�֘`NSٴ)&�,��`NSٹA&��T�a ��A� �G����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �G����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����Ə@��a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H���� ��#�,a ��A� ������ ��#�,a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H���� ��#�,a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� �ȿ��� ��#�,a ���� ��� A�@��Ə֏@��a ��A� �Ⱦ��� ��#�,a ��A� �H���� ��#�,a ��A� �Ƚ���Ə@��a ��A� �G����Ə@��a ���� �� A�@��Ə֏@��a ���� Ј� A�@��Ə֏@��a ��A� �Ȼ���Ə@��a ��A� �H����Ə@��a ��A� �Ⱥ���Ə@��a ��A� �H����Ə@��a ��A� �ȹ���Ə@��a ��A� �H����Ə@��a ��A� �ȸ���Ə@��a ���� ��� A�@��Ə֏@��a ��A� �ȯ���Ə@��a ��A� �H����Ə@��a ��A� �Ȯ���Ə@��a ��A� �H����Ə@��a ��A� �ȭ���Ə@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �H� B�A8��Ə֏0@�c��, a ��A� �H����Ə@��a ��A� �Ȫ���Ə@��a ��A� �H����Ə@��a ��A� �ȩ���Ə@��a ��A� �H����Ə@��a ��A� �Ȩ���Ə@��a ��A� �H����Ə@��a ��A� �ȟ���Ə@��a ���� ��� A�@��Ə֏@��a ���� �H� B�A8��Ə֏�@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H����Ə@��a ��A� �Ȝ���Ə@��a ��A� �H����Ə@��a ��A� �ț���Ə@��a ��A� �H����Ə@��a ���� �H� B��@��Ə@H�Y?!<Sa ���� �Ț B��@��Ə@H�Y?!<Sa ��A� �ș���Ə@��a ��A� �H����Ə@��a ���� �� A�@Ə��4֏@��a ��A� �H����Ə@��a ��A� �ȏ���Ə@��a ���� ��� A�@Ə��4֏@��a ��A� �Ȏ���Ə@��a ��A� �H����Ə@��a ��A� �ȍ���Ə@��a ��A� �H����Ə@��a ��A� �Ȍ���Ə@��a ��A� �H����Ə@��a ��A� �ȋ���Ə@��a ������ �ɋ A�@��Ə֏@NS�?!�a � ����� �ɋB�@��Ə֏@NS�?!�a ���� �� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a "D,��� ������}��\`�� #�``&-v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa ���� � � A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ���� �I A�@��Ə֏@��a � ����� ��B�@��Ə֏@NS�?!�a ������ �� A�@��Ə֏@NS�?!�a ���� ܇~ A�@��Ə֏@��a ���� ܇~ A�@��Ə֏@��a "D,��� ������}ğ\`�� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa ���� ��} A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��z A�@��Ə֏@��a � ����� � {B�@��Ə֏@NS�?!�a ������ � { A�@��Ə֏@NS�?!�a ���� ��y A�@Ə0T�b�0 !I֏@��a ���� �Iy A�@Ə0T�b�0 !I֏@��a ��A#�`�&�5�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�5�Ə0T�b�0 !I֏04�a��, a ���� �Ix A�@Ə0T�b�0 !I֏@��a ���� ��o A�@Ə0T�b�0 !I֏@��a ���� �Io A�@Ə0T�b�0 !I֏@��a ���� ��n A�@Ə0T�b�0 !I֏@��a ���� �In A�@Ə0T�b�0 !I֏@��a ���� ��m A�@Ə0T�b�0 !I֏@��a ���� �Im A�@Ə0T�b�0 !I֏@��a ���� ��l A�@Ə0T�b�0 !I֏@��a ���� �Il A�@Ə0T�b�0 !I֏@��a ���� ��k A�@Ə0T�b�0 !I֏@��a ���� �Ik A�@Ə0T�b�0 !I֏@��a ���� ��j A�@Ə0T�b�0 !I֏@��a ���� �Ij A�@Ə0T�b�0 !I֏@��a ���� ��i A�@Ə0T�b�0 !I֏@��a ���� �Ii A�@Ə0T�b�0 !I֏@��a ���� ,�5A�@֏0T�b�0 !IƏp�a��, a ���� ,�5A�@֏0T�b�0 !IƏp�a��, a ���� ��_ A�@Ə0T�b�0 !I֏@��a ���� �I_ A�@Ə0T�b�0 !I֏@��a ���� � _ B�A8֏0T�b�0 !IƏp�a��, a �ȈA� �I^� ����@�@ �0�c���4��#��T��PNS��PNS�֏@��a �ȈA� ��]� ����@�@ �0�c���4��#��T��PNS��PNS�֏@��a ;J,@ �� �� �������a��pC�`0�0���� ��^%�1K� 7�2F0bp v�W���#�``'|�,�,�1P�D!��@�z(�p�$��A8F�`��Խ& ��`B!0OM[b�!8̀Ӧ�`N3�&�,7m�� �&�,wo� ��<vm� ��4��#��#��#� &�,a 9J,@ �� �� �����ЕQ�$� E��,�@#�` &u���p�Q��,Ca#�` &v�$�Lj�� ��]-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3v�@N3�`!0�n� �,�]`� 0��#��#�&�,�n� ��<un� ��4��[b�!8�`��@��a 9J,@ �� �� �������Q�$� E��,�@#�` &p���p�Q��,Ca#�` &q�$�Lj�� �I\-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3�@���a!8�`� ��<�&�,vm� ��<��Əf�`��ػ&�Թ%&�� vo� ��4��a 9J,@ �� �� �������Q�$� E��,�@#�` &k���p�Q��,Ca#�` &l�$�Lj�� � [-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3v�@N3�`!0�n� �,�]`� 0��#��#�&�,�n� ��<un� ��4��[b�!8�`��@��a 5J,@� ���,C #�`"cE�$� ���,�@#�`"de� � F� ���A��2Kp��A��U2Kp TD!��@� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`">E�$� ���,�@#�`"?e� � F� ���A��2Kp��A��U2Kp TD!��@� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`�'9E�$� ���,�@#�`�':e� � F� ������2Kp�����T2Kp TD!��@�� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`�'4E�$� ���,�@#�`�'5e� � F� ������2Kp�����T2Kp TD!��@�� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 7J,@ �� �� ������T1K� 7x� ������1K� 7�2F0bP �"S�,�1bP �"S�,�1P�D!��@�z(�p�$��A8��0�c�`� ��4��#�3v�`N3Զ!&�� �m� �,Kn� ��<�&�,� &���@��Xa�!�R�a 7J,@ �� �� ������T1K� 7x� ������1K� 7�2F0bP ��R�,�1bP ��R�,�1P�D!��@�z(�p�$��A8��0�c�`� ��4��#�3v�`N3Զ!&�� �m� �,Kn� ��<�&�,� &���@��Xa�!�R�a � �X�@��Ə@0�@X?!8Ma � �T�@��Ə@0�@X?!8Ma � �`�@��Ə@0�@X?!8Ma ���� � H A�@Ə0T�b�0 !I֏@��a ���� ��? A�@Ə0T�b�0 !I֏@��a ���� � ? A�@Ə0T�b�0 !I֏@��a ���� ��> A�@Ə0T�b�0 !I֏@��a ���� � > A�@Ə0T�b�0 !I֏@��a ���� ��= A�@Ə0T�b�0 !I֏@��a ���� � = A�@Ə0T�b�0 !I֏@��a ���� ��< A�@Ə0T�b�0 !I֏@��a ���� � < A�@Ə0T�b�0 !I֏@��a ���� ��; A�@Ə0T�b�0 !I֏@��a ���� � ; A�@Ə0T�b�0 !I֏@��a ���� ��: A�@Ə0T�b�0 !I֏@��a ���� � : A�@Ə0T�b�0 !I֏@��a ���� ��9 A�@Ə0T�b�0 !I֏@��a ���� � 9 A�@Ə0T�b�0 !I֏@��a ���� ��8 A�@Ə0T�b�0 !I֏@��a ���� � 8 A�@Ə0T�b�0 !I֏@��a ���� ��/ A�@Ə0T�b�0 !I֏@��a ���� � / A�@Ə0T�b�0 !I֏@��a ���� ��. A�@Ə0T�b�0 !I֏@��a ���� � . A�@Ə0T�b�0 !I֏@��a ���� ��- A�@Ə0T�b�0 !I֏@��a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ���� � , A�@Ə0T�b�0 !I֏@��a ���� ��+ A�@Ə0T�b�0 !I֏@��a ���� � + A�@Ə0T�b�0 !I֏@��a ���� ��* A�@Ə0T�b�0 !I֏@��a ���� � * A�@Ə0T�b�0 !I֏@��a ���� ��) A�@Ə0T�b�0 !I֏@��a ���� � ) A�@Ə0T�b�0 !I֏@��a ���� ��( A�@Ə0T�b�0 !I֏@��a ���� � ( A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� ,94A�@֏0T�b�0 !IƏp�a��, a ���� ,74A�@֏0T�b�0 !IƏp�a��, a ���� ,54A�@֏0T�b�0 !IƏp�a��, a ���� ,34A�@֏0T�b�0 !IƏp�a��, a ���� �I B�A8֏0T�b�0 !IƏp�a��, a ���� �� B�A8֏0T�b�0 !IƏp�a��, a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a �ȈA� � ��Ə@NS�>�D�`��, a �ȈA� ȉ��Ə@NS�>�D�`��, a �ȈA� � �� ����@�@ �0�c���4��#��T�&��T��#OD ֏@��a �ȈA� ȉ�� ����@�@ �0�c���4��#��T�&��T��#OD ֏@��a ��A� ������0<Sa ��A� �J����0<Sa ��A� ������0<Sa ��A� �J����0<Sa ��A� ������0<Sa �b�d�@��<a �a�d�@��<a ���d�@��<a ���d�@��<a �b�p�@��pD� �a �a�p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a A, �\`d�`�n@�������`tdld{@�;�;#�`�*��A8��0<Sa A, d�\`��=�C8�<��<�C;�A=������}�l�#�`P ��A8��pD� �a ���� �G� B�A8֏`8E!��# )Ə@�Da ��A� �J��� a ���� � ��Ə0�d�2a ��A� �J���@0��a �pCPa0bp ��7�� Ap�A8Ə@<1�>��a A,@ � ������ ؊�B0��Ə@<1�>��a �pCPa0bp ��7C� Ap�A8Ə@<1�>��a A,@� ������ ؊�B0��Ə@<1�>��a A, 4�\W ��8�C:�C9�C8��:��8́���} #�` a A,@�& !P�\Î$����M���&@�@ �PX�06� 8� & ұX?�!EB 4��# Y`� Q��# )a A,@�& !P�\Î$����M���&@�@ �PX�0�PHT�#֏pH�P a� ��� &ұ���# �>��a A,@�& !P�܈A� � � �a� �A8 �PX�0&�0H�b�CD֏P �2��@0��X`� Qa A,@�& !P�܈A� � � �a� �A8 �PX�0�PHT�#&�PH��#Ə0T@d��@,`�H a A,@�& !P�\Î$����M���&@�@ �PX�06� 8� & ұ?�P��#�L��# )�0HTa A,@�& !P�\Î$����M���&@�@ �PX�0�PHT�#6�@8���`B!��?�P��#�L��# )a A,@�O6!P\Ď$����B$H0�� �PX�0F� 8� & ұ?�P��# )&�0HT`��4� H a A,@�O6!P\Ď$����B$H0�� �PX�0&�PHT�#F�@8���`B!��?�P��# )֏�,@C���a #A,@�& !P�\Î��� 2b� ��7J�0�#�`�+rd�PX�06� 8� & ұX?�!EB 4�&�,�m�CD�0HT`�H�&�,a A,@�& !P�܈A� ���# �`�+y��!�&��A� �J�� �PX�0f�`��Է & ұ?�P��#�L��# )�0HT`� �, a "A,@�& !P�\Î��� 2b� ��7 �0�#�`�+rd�PX�06� 8� & ұ�a�!�R�Ə0T@d��@,`�H�& a!�a #A,@�O6!P\Ď���M2b� ��7K$�hB�����M�A8�PX�0F� 8� & ұb�!�R�Ə0T@d� �D��@0��X?� a�b� �, a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0f�PHT�#֘P8���Ƙ`H��#�&(��D�D-Sm� �t,>b�H��#R$�@C�b�!Q��Ԇ�@8��aBHLDH�2?�Pa MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0֏pH�P a� �D>�#֘p8���>b� �t,>b��&0��D�D-S�#Ə0T@d�H�&ұ���a�HLDH�2��-& �H�#��`8���a FA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�PHT�#��`H��#�&(��D�D-Sm� �t,>b�H�)&�Hm� 1!Q�d�CD֏P �2a HA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�pHT�#>b� �t,>b��&0��D�D-S�#Ə0T@d��@,`�H�&ұ���a�HLDH�2��)& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�PHT�#֘P8���Ƙ`H��#�&(��D�D-Sm� �t,>b�H�-&�Hm� 1!Q�d� ����# Y?B1�a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�pHT�#>b� ����#Ƙ�H��#��XaHLDH�2�>b�CD֏P �2��@0��b��D>�#F���L>b� �t,>�#���HT�#��a JA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�PHT�#�P8���֘`H��#�&(��D�D-Sm� �t,>b�H��# �& )Ƙ`HT�#�%&N�#V���LƏ0T@a MA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�pHT�#>b� ����#֘�H��#���aHLDH�2�>b�CD��@0��X?� a�b� ����b�!����&,��D�D-��c"Q���>a MA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`@*O`d�PX�0V���L�&����>��b� ����Xc��D>�#��#R$�@C�b"Q���Hm� �t,>�#�&$��D�D-��# �a�!���a GA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0V���L�&����>��b� �D>�#�-& ұ����F���LƏ0T@d��@,`� �t,>�#a LA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`@*O`d�PX�0V���L�&����>��b� ����Xc��D>�#�-& ����Ƙ�H��#>baBHLDH�2?�P��#�L�&ұ���a MA,@�OPQsu��`n v@`@p�`�dl@r�{`�9��<��<�{sy��`n v@`�dl@q�ld {p�<�A��#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0f���L�&����>��b��4� H�%&N�#>b� �����Ƙ�HT�#>R[c"����m� 1!Q�d�CD��pH��#>a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0֏pH�P a� �D>�#֘p8���>b� �t,>b��&0��D�D-S�#Ə0T@d�H�!&N�#>b� �t,>�#F���L>b� �D>R�a PA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0���HT�#�����#R$�@C�aB"�����aBHLDH�2���b�D>�#>b�CD��@0���aB"Q�����XcB�D>r���c�"���>�#V���L���a HA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�pHT�#>b� �t,>b��&0��D�D-S�#Ə0T@d��@,`�H�&ұ���a�HLDH�2��)& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0���HT�#����&$ұ�����&4��D�D-�����# Y?B1��>��b� �D>�#>b� �t,>b���Xa�HLDH�2�>�#a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�pHT�#>b� ����#Ƙ�H��#��XaHLDH�2�>b�CD֏P �2��@0��b��D>�#F���L>b� �t,>�#���HT�#��a PA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0���HT�#����&$ұ�����&4��D�D-����!& N�#>�#Ə0T@d��@,`�H�&$�����5&$N�#����1&(ұ���#>b�  1!Q�T���a MA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�pHT�#>b� ����#֘�H��#���aHLDH�2�>b�CD��@0��X?� a�b� ����b�!����&,��D�D-��c"Q���>a PA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0Ƙ�HT�#����!&$ұ�����&4��D�D-����%& N�#>�#Ə0T@d�H��# �& )v��HT�#>�#昐8���>�#֘�H��#����&8��D�D-S�#>a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n���� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,t� 8b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������pn0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2�6�������4MV�������4M���L��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������pnPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� �_�O�H#�d� ��4UMaB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������pn`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������pn`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# ��`�!8MU��@NS�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L� &��T&���L��# �Y`�HLDH�2�F�`NSո&��T5o� 1!Q�d� �_�O�H#�d� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# ��`�!8MU��@NS�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L� &(��D�D-o� 1!Q˴a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� �7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,t� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6�@NSY`�HLDH�2�&���L�&(��D�D-�n� ��4U�[a�!8MU�����L��0<Sd� �_�O�H#�d� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,D� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�6�������4M&���L�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,t� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 8�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� 8Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,�� 8W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,t� 8�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,4� !8�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2�6�������4MV�������4M���L��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� )8�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� 18�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�6�������4M&���L�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 98�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8��0<Sa A,��\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8��0<Sa 2A,�� E8�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� Q8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� ]8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� �7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,t� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,D� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,t� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 8�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� 8Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,�� 8W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,t� 8�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,4� !8�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� )8�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� 18�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 98�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8��0<Sa A,��\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8��0<Sa 2A,�� E8�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� Q8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� ]8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1�Ə ��#�c��t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1�Ə ��#�c��t �a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1�Ə ��#�c��t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1�Ə ��#�c��t �a ���� ��/A�@ƏPT�B��@0��a ���� ��/A�@��@0��?BQ Ea ���� �/A�@��@0��?BQ Ea ���� �/A�@��@0��?BQ Ea ���� �/A�@ƏPT�B��@0��a ���� �/A�@ƏPT�B��@0��a ��A� ��-#�`p�0���@0��X?!�b�E,a ��A� �I-#�`;�0���@0��X?!�b�E,a ���� �- �hB�&�İQ�C8֏@<1�>��b�E,a ���� �- �hB�&�İQ�C8ƏPT�B֏@<1�>��a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ���� �N, �hB�&�İQ�C8ƏPT�B֏@<1�>��a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ��A� �.#�`�;�@� 0� ��@�@֏@<1�>��b�E,a��, a ��A� ��-#�`�;�@� 0� ��@�@ƏPT�B֏@<1�>��b��, a A, $�\U�C8��;�;�C9�������A #�`+���@�� 4a ����� �O* B�A8֏0T�b�0 !IƏp�a��, a ���� ܇)A�@��@0��X?!�b�E,a ���� �)A�@��@0��X?!�b�E,a ���� ܇(A�@��@0��X?!�b�E,a ���� �(A�@��@0��X?!�b�E,a ���� ܇A�@��@0��X?!�b�E,a ���� �A�@��@0��?BQ EX?!�a ���� ܇A�@��@0��X?!�b�E,a ���� �A�@��@0��X?!�b�E,a ���� ܇A�@��@0��X?!�b�E,q y2"�^�4�uJ�`�4�L�b�48�O�d�5Xf[�f�5xv^�h�5��h�j�6��k�l�6�fo�n�7�vz�p�7�|�r�78��t�8Xg��v�8xw��x�8�ǘ�z�9����|�9�g��~�:�w����:`����:8p����;X�����;x�����;�`Ƀ��<�p̃��<�`σ��=�ڃ��>8�郔�>X�����?x�����@�0���@����A����B��.���C�?���D8�O���EX_���FxPn���G�p}���H�����I�@����J�`����KP����K8ʄ��MX�ބ��N��턺�N��N�����OH����O������O�����O�����O8���Ph� ���P� ���P�� ���P(@���Ph����Q�`���Q�����Q(����Qh���Q�����R�)���R((�*���Rh(,���R�(�-���R�(0/���R()�8���Sh)0:���S�)�;���S�)@=���S(*�>���Sh*@H���T�*�I���T�*�K���T(+ M���Th+�N���T�+ X���U�+�Y���U(,P[���Uh,�\���U�,p^���U�,�_���V(-�i���Vh-0k���V�-�l���V�-@n���V(.�o���Wh.Py���W�.�z���W�.P|���W(/0~���WH/����X�/P����X�/И���Y�/p����Y�/����Y8�����YH8�����Zh80����Z�8�����Z�80����[�8л���[9p����[89����\X9�ȅ��\�9�ʅ��\�9�̅��\�9�΅��\8:�؅��]x:�څ��]�:p܅��]�:Pޅ��]8;0腵�^x;ꅹ�^�;셽�^�;���^8<����_x<�����_=P ���`�=����aX>�(���b�>p/���c�?�>���c�?H���d�?�I���d(H�K���dhH�M���d�H`O���e�H@Y���e(I [���ehI]���e�I�^���e�I�h���f(J�j���fhJ�l���f�J�n���f�J�x���g�J�z���g(K�|���ghK`~���g�K@����h�K ����h(L����hhL�����h�L�����i�L�����i(M�����ihM`����i�M@����j�M ����j(N����jhN����j�N ����k�N@����k(O@����khO ����k�O����k�O�Ȇ��l(X�ʆ��lhX�̆��l�X�Ά��l�X`؆��m(Y@چ��mhY ܆��m�Yކ��m�Y�߆��n(Z�醤�nhZ�놨�n�Z�n�Z`�o([�����oH[�����oh[����o�[@����o�[�����o�[����p\P ���pH\� ���px\� ���p�\���q�\����q�\`���r]�)���r(]p-���rh]�9���s�]>���t�]M���u�]�^���v�]�o���w^�����x(^p����zH^ଇ��{h^�����|�^�؇��}�^0���~�^@������^ ��̀_�����(_�����H_@����h_@-�����_p<�����_�K����_`X�����_�[��օh�h��ֆ(h`x��ɇHh�����hh�������h ���҉�hP���Ŋ�h������hp�����i����(i0�����Hi0�����hi`������i�������iP���Џ�i�������i� ����jP����(j�*���Hj�9����hj=�����j@L�����j�X�����j`\����j�_����k k���(k {���HkP���՘hk����ș�k@������k�������kp������k@�����lp�����(l�����Hl�����hl0������l����ٟ�lP������l� ��Ơ�l����m����(m@-����Hmp<����hm0I�����m�L����m`Y����m0i��֦�m`x��ɧn�����(n����ߨHn ���ҩhn������n���Ϊ�n�������np���ޫ�n�����o����ޭ(oP���ٮHo������ho@���ү�o���ڰ�o���ձ�o�(��в�o@8����x<����(x�K���Hx�X����hx�\����x�h�����x@l�����x�|�����xp�����y �����(y`�����Hy����hy`������y������y`������y������y������z������(z� ����Hz�����hz������z������z`.�����z=�����z�K����{�X����({�\����H{�i����h{y�����{������{p������{p������{ �����|�����(|�����H| �����h| ������|�������|P������|������|������}������(} ����H}P����h}+�����}�9�����}�=�����}`L�����}@Y����~P]����(~`i����H~`m����h~�|�����~�������~@������~0������~0�����P�����(������H@�����h����������������������������������� ����(������H� (����h��.�������=������pJ����ȈpN����舐[������j����(��y����H�0�����h�0���������������П����ȉ�������Ю����(�p�����H������x��������������@������������(������H���������������ȋ`������ �����H�������] ���<threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_86_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64llvm.nvvm.associate.access.property.p0i8.p0i8llvm.nvvm.memcpy.async.p3i8.p1i8__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z16__isGridConstantPKvllvm.nvvm.isspacep.grid_const_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z31__cvta_generic_to_grid_constantPKv_Z31__cvta_grid_constant_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj_Z16__match_any_syncjjllvm.nvvm.match.any.sync.i32_Z16__match_any_syncji_Z16__match_any_syncjmllvm.nvvm.match.any.sync.i64_Z16__match_any_syncjl_Z16__match_any_syncjy_Z16__match_any_syncjx_Z16__match_any_syncjf__float_as_uint_Z16__match_any_syncjd__double_as_longlong_Z16__match_all_syncjjPillvm.nvvm.match.all.sync.i32_Z16__match_all_syncjiPi_Z16__match_all_syncjmPillvm.nvvm.match.all.sync.i64_Z16__match_all_syncjlPi_Z16__match_all_syncjyPi_Z16__match_all_syncjxPi_Z16__match_all_syncjfPi_Z16__match_all_syncjdPi_Z11__nanosleepj_Z9atomicCASPttt__usAtomicCAS_Z17__reduce_add_syncjj__reduce_add_sync_unsigned_impl_Z17__reduce_min_syncjj__reduce_min_sync_unsigned_impl_Z17__reduce_max_syncjj__reduce_max_sync_unsigned_impl_Z17__reduce_add_syncji__reduce_add_sync_signed_impl_Z17__reduce_min_syncji__reduce_min_sync_signed_impl_Z17__reduce_max_syncji__reduce_max_sync_signed_impl_Z17__reduce_and_syncjj__reduce_and_sync_unsigned_impl_Z16__reduce_or_syncjj__reduce_or_sync_unsigned_impl_Z17__reduce_xor_syncjj__reduce_xor_sync_unsigned_impl7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! |z !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQl� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@�� ����� ��:���� ��ށ���a~��!�a�������@�l X6�,�$� �b��X�@0 �f� �3b��x�@@ �� e �����H5��=�C;�A8��;�=�=��;��<�=�C8��<�;��;�C9��� ������5������ �����!�!�����A����!܁ʁ� c@�����H�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9� �`a�����HI�`� �A&�1ad�$�@�0�2af$K3�ƙP��<�@ah�DɄ��H�iB@M�h�T�`� �"�gB`M*�� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��2TP��� 5 "PA1� 1��8F�"J�|��� Ȍk�)��ɧ��jPP4(�4����&_8��F�a ( 6����&� ��@ep� �c�)��� ��@" (���F�"J�|J8��FPP:(����i�(a��pDP@�� (����i�(a�)�"P@�Ѓ (����#�����&_:�h�Q�G���8G�"J�|J:�h�Q�G��F�"J�|�p��FB}���>��BΑ��&��'�l$��G�B�i�(a�É� }��G!飏>h�s�)��ɧ�É� }��G!飏>ȑk�)��ɗ'�pD��G}��>����i�(a�)�p� GD}��G)&飏>� Jn���&i���c�)��ɧ�f�Q@2�4�E�"J�|��l$@8��i�(a�)��l$@>�i�(a�f��B�F)D�r�4E�0�H3�(�)��1�Q��SH3�(�*��1�Q��/Nc�(0��@�\#M%L>�8�Q���"�b�r�4E�0���6 0� �`�r�4E�0���4�� (�-@�#M%L��4ƍ 0��`���5�Q��S��7 0��B�b�P/�HSD ��8��#� 0��`�0�HSD �O-Nc��0� (�0`�4� �5�Q���L5 �)�1��1�HSD �_,0�H(��2$SL1��5�Q���L7�)��B0SL1�P3�HSD �_,0�(��b�)�3�SL1�A�Q��/Nc,Nc�(0��@�\$M%L>�8��8�Q���"TcYs�4E�0�����6 0� �`es�4E�0���4��4�� (�6@�$M%L��4��4ƍ 0��`���E�Q��S����7 0��B�c��8ISD ��8��8��#� 0��`�P9ISD �O-Nc,Nc��0� (�9`����9�Q��,D�u���:��9�Q��,��u�)�;�C�#M%L��P�B�hPGu �:�C�#M%L��P�B��PGu�)=ꨣ�:TO���O!� h�RT@��b�"�T ���PL1TP�Q�*C1�C ���b��ʠ�:PCTL�)�!�� ��IT�b�1�(*D1��YT�!� QL1�C�bz�8*C1C�Au�!�ʠ�:�HeP�u��2`�dRPB� �<T �T0�X*� `�T ( ��$S)�QGu � ��:�C6Bu��p*�@:��u ��`�:�S�1��@B�A �ʠN1�Q�N�AJJ�P@KA� ��"P=U�+���p�TF@�BTZ�U���*FU�V�(�b��*B1�W�0��*�:�$V h��*�Y�G�@�Ң5���Z��Q�;ܢ���"�E���.���Ex�)E8E/ڋ�)6}�_�F��#=���`DR�C ��h�"L�)F��ƨ1R��<F��6E�F2���<D�A��2J��dF��3Ex�3��)�;�he��H�2\QDZ�@�2� W(�V�+�Z�T+�n�A��ኸ!��p]�le��.NH�2\��)D[�� �� W��V�+Ӄt+��B����&!��pc�pe��1UH�2\!�6D\�x�2� W �!W�+2K��+��=C̕���!��te�bH�2�:D]!Ⱥ2T�]!�H�2T��]!�ȻB�: x���>� ��(b�*�E@�J� �W�ԡ����Z��!��[$�����E���>����E���H�"ħ�g (�}�E@0 �� F�>è�"ܗX����c�`���4B1����BCSL1�AB�hB#��N*��,,�@⊵�4,�n���"�>� �q]}��Gb!�� H�b\��X�+�2�2�W�b1� �T,�����X�+룏>�  qc@0��H�B\!����"�b�!�qg�SL1�c!��LuHG,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �a��0;��{ � �e�p�c0 � �H�`��q�b0�($r�8j1�`��`� @���\0�[  ��L..��'�#��v@~� ơ��@;������` �|�q�b0�(�r�8z1�`$v�`� @�ڿ\0�_  ��b� ���@;�� r�8�1�`d�A.�8�~5���` ���`� @�������v@��r�c0���Y@�|  ��x@ ȡ��@;�qd9�1�`T��+�9�FPp�8�` �P, �`� @��I��#��v@�)��q�c0�hOW0�u  ���� ����@;��\�8�1�`TƂ+�;��Yp�x�` �Ph �`� @�zq��#��v@�.��q�c0�h�W0�y  ��� �A��@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��m� @ �f��q�`�4��� @ �d�x��!R�P:p0D�_b�H!LD�@�I��HP"�1!� C�:&$|�`�t�Ĵ4 �t����!�:�Hp0D�g"* �H,MH(@�ɧ i%P"�51� C��&���`�d�E4 �ԛhn��!�}�N0D2q�� �H4N@`@��̉g,"�9�C$R' � `�D넴 �̝x���!R�P\0D*y� �H5ODw@���H/"�=!�C��'$� `����4 �ܟ�N��!���j0Dz�Bj �HaXL�@���i6"�bA�C�],�� `��E� �H��~��!RN�x0Dz��*�H�Y\�@��7��="�g!�C��,&� `�$�U �̴����!���}0D��B��H�Z@�@�iW��>�"�j!�C$x-�� `�į�� �T�`���!���}0D�����Hl[0�@� o '?"�n��C$�-�� `����� �з����!R�S~0Db�"��H=\L�@� � '?"�q�C$W.�� `���� �عp���!�>P~0DR����H8]@�@� ��)?"�uQ�C$�.�� `�4�E� ��`���!��~0D����H<^0�@� � �?"�y��C$R/�� `�$�� ���X���!Һ�0D��b �H _$!@�)�%D"�|��C$�/�� `���E�@ ��`B��!��H�0D:�� �H�_$!@�����?"���C��/� `�d��"@ ���HB��!� H�0DrA#��H7h �@���$D"��q�C�74� `���"@ �@�8F��!�)ň0DbE��H�h%@�I��D�"��q�C$s4� `���R" ���@J��!�>E�0D�G#)�H(i%@��% �D"٤Q�C��4� `�4��"@ ���@V��!�[ʊ0D�Ki�H�i$-@�I5��D"ŦA�C��4� `�䛆Q"@ ���HR��!R{E�0D�OC��H�i0@�)D��D"��A�C$5 `�t��!#@ �z�PV��!ҙƊ0DjS)�Huj%@�IO��D"��A�C�R5� `�ԪFQ"@ �d�@J��!��E�0D�U�(�H�j%@�I] �D"ɫQ�C�{5� `���FQ"@ �H�PR��!��F�0D�Y�(�H;k%@��g �D"��Q�C$�5� `�D�FQ"@ ���H���!���0DB]cY�H�k+@�Iw �F"����C$�5� `�d�FQ"@ ���HJ��! F�0DRa)�H2l%@�醍�D"��a�C$36� `��ƆQ"@ ���HJ��!�F�0D"e#)�H�l%@�i� %E"��a�C�q6� `���FQ"@ ���8J��!�=D�0D�g)�H#m%@� � �D"ɴq�C��6� `�4��Q"@ ���hR��!�]I�0Dm�I�H�m()@� � 'E"����C$�6 `����a#@ �H�HJ��!R�F�0D�qC��H=n8@��̍G"����C�;7� `��Q"@ �L�@J��!��E�0D�u#��H�n8@�I� G"��q�C�y7� `��R"@ �T�HR��!��E�0D�y#��Hao:@���$E"��Q�C��7� `���F�"@ �B�HJ��!��F�0D�}#)�H�o%@�����D"��a�C$�7� `�t��Q"@ ���HJ��!� F�0Db���H<x$<@�� �G"��q�C$=<� `���P"@ �F�0J��!R*C�0Db����H�x >@���D"��1�C�_<� `�T��P"@ ���8|��!�;��0D��C*�H$y8%@�I&�D"���C$�<� `�ė�Q"@ �F�XJ��!�kH�0D���)�H�y,%@� >��D"�灔C�=� `�Ģ�Q"@ �d�h���!ҏ��0D:ӣ!�Htz�@� O�>"���C$T=3 `��Ga&@ �j�@���!R���0D�1�H�z f@�i^�L"�끘 C��=3 `���b& �f�@R��!����0Dۃ �Hg{ d@��mL"��A�C��=�� `�4�r �V�@���!����0D��1�H�{f@��|�L"� C$�=3 `��b& �L�@���!� ��0D��I�H>| b@�ɌBL�"�� C$9>0 `���ǃ& �R�`���!R-�0D"�A �H�|<h@�韏M"��� C��>4 `���G�& ���h���!�j��0D���Q �H�}<h@��M�"��� C$?4 `���ǃ& ���`���!R��0DB��A �H�~<h@�i�M�"��� C$?4 `���ǃ& �r�`���!R��0D���A �H�8h@����M�"��� C��?4 `�$�ǃ& �Ba���!R "�0D�A�A �Hh�@ C$<D���!)"�@��f `����& ��q���!R?"�0DrI�a �H=�@n@��-�M�"�%r� C$�D 9 `�t��'8 �\)���!�l"�0DZO� �H� v@�i?�N�"�(�� C�E0< `�4�H"&@ ��I���!R�"��0D�S$ �H��`x@��W�DL�"�+�� C�xE1 `���H"&@ �F����!��"��0D"[$ �Hm�$b@��n�DL�"�-�� C��E� `�ľ�"@ ��yB��!� #O�0D�a���Hx�@!@� �(D�"�2�C$tF� `����' �hq���!�X#��0D�k�� �H~�8~@����O"�7�� C��F? `�����'@ �ny���!��#�0Du� �H��8�@���GT�"�;� C$}G<P `����#*@ ��yD��!��#��0D*}� �H��x�@�I���T"�`�@�)�GM"�b¨ C$VL6 `�����&@ ��1y���!>&�0D2��a�H5�4l@�I,�M"�e° C$�L6 `���I�&@ �p3y���!�y&�0D���a�H$�8l@�IF��M"�i� C�7M6 `�ԧI�&@ �T5y���!R�&�0D:��I�H��0�@�Id M"�l"� C$�M.4 `��Ʉ&@ �h7����!��&�0D���B�H3�Lh@�Ɍ�M"�qB� C$XN.6 `�t�I�&@ ��9����!�L'��0D"��R�H{�Lj@�ɵ+U"�w"� C$�N�T `���ɔ*@ ��<����!��'�0Dj��B�H�\h@�Iߓ M"�|2� C$�O04 `��� �&@ �`?����!��'�0D��C�H2�Ph@�� ��M"��R� C$YT06 `�����&@ �@R����!�M*��0DRKS�H��Pj@��6 M"��"� C$�T.4 `�T�ʄ&@ ��T����!��*�0D�U�b�H�Tl@��_ M"Ѭ"� C$�U.4 `�Էʄ&@ �`W����!��*�0D�_�b�H1�Tl@�Ɍ M"�"� C$WV.4 `�T�ʄ&@ ��Y����!�K+�0Dk�b�Hy�Tl@�ɵ M"��"� C$�V.4 `���ʄ&@ ��\����!��+�0DRu�b�H�Tl@��� M"��"� C$�W.4 `�T�ʄ&@ �P_����!��+�0D��B�H'�Lh@�I�k `����0D�["��2-@ ��q��H%�H C��\���!�[.�@�I4��M"��B� C��\07 `�T�K�&@ �tt����!�.�0D��B�H��Lh@��]�M"��2� C��].6 `�Ķ �&@ �@w����!��.�0DB��B�H��Lh@�I��M"��B� C$>^.6 `�4�K�&@ ��y����!R?/�0Dr��B�Hd�Hh@�ɮ��M"��"� C��^,6 `�4���&@ �L|����!Ҏ/�0Db��B�H��Hh@��֗�M"��2� C$~_,6 `�$� �&@ ��~����!�/�0Dr��B�H�Lh@� ��M"� 3� C�0d.6 `��� �&@ �X�����!�82�0D�G�B�H+�Lh@��'�M"�%C� C$�d.6 `���L�&@ ��QV�!�2��0D2Q�Z �H<�Lr@��M Np"�*� C$Ze&8�`�t� $'@ ����!�2Y��0D [&��Hr�d���iu�)"�.�� C$�e�8 `�T� �*@< �z�����!3]��0D�e�{�H��|�@�饙0x�Hp�x�@�ɵ��"�7��C$g�Z `�t� W  �F�1�W `��� �C��g�� `���L�@@ �ʞ�b��!�3V�0Dr}F��H��h�@�I�'V"�`s� C$4l�� `����d+@H �V�����!�.6�}0DZ�f��H��DC��l&\ `�$�ͥ+@H ��p��!k6�0D����H��`�@� F W"�is� C�?m.\ `�d���+ �ҵq���!ҽ6��0D*����H;�`�@�in��W"�n3� C��m&p `���. �L�����!7�0D���H��\�@�i�� \"�s3� C��n,q `�4� &. �������!�l7�0D*�f�H��X�@��� \"�y�� C$>o0p `�D��. �ֽ����!��7 �0Dj�f!�H8�,���i��\�"�}�� C��o��!�7 �0Dz�b�H��@�@����H^"��� C�t| `��γ/ ��С���!�(:��@0DrEgI(�H��,C$rtr `��N2 �@҉H��!RL:��0DKGR�Hu�@-@��4f"զc� C��t�� `�d��r3 �Bԉt��!��:Q�0DSG�Hu�0�@�)T�\"��Ø C�\us``�T��.L ���a �H��0�@�)e��]"�� C��u$y `�Է�T/ �^ׁ���!��:о0Dz_���H$�0�� �&]�"��@ ���a���!;R�0D2eG"�H��L'@�i��Ie"��� C��v"� `���53 ���aj��!�h;��0DzmG��H��H=@�i�� l"��Ð C$wr `���c.L ���a�� �!��;L�00Du��"��Ð C$]w"v `���N�. ��ݑ���!��;R�0D{��Hp�@�@� ���_"վØ C��w�t�`���0D��!�H%�H!@���d"��3� C$>|&� `��O�2 ���`��!R<>��0DBɇ��H4�07@� ,Ig"��#� C$�|&� `�t�C. ���a���!�{>��00D�χ1&�H'�0���iF `���C. ������!�>ѻ0Dj�G��H��H�@�)^_"��� C��}* `�d�c.P ���a� �!��> @�Iu�\"��#� C$�}$� `����t2 �Z��T��!?Q�0D��'��H��\3@�)��f"���� C�x~$� `�4ҏ�3 �j�����!Z? �0D��!�H��0������\�"��ä C$�~��!|? �0D��'b�H-�D�@���I^"��#� C$Q | `�$��/ �������!ҽ?��@0D��I(�H/�0C��r `�t��2 ����H��!��?��0D��gR�H��D-@�I�f"� t� C$5��� `�d�s3 �D�t��!-BR�0D2Gh�H�1�@��$!�\"�$Ę C���s``����.L ��b �H� 1�@��5��]"�&� C���$y `���T/ �f����!ҘBо0D�S���H� 1���V!&]�"�+�@ ��b���!�BR�0DRYH"�H< M'@��m�Ie"�.� C�م"� `�D��53 ��bj��!� C��0D�aH��He I=@�鎡 l"�2Ĉ C$[�� `�$�C6T ��b�� �!�>C��P0D2i�A�H2 1b@�ɧ!Im"�5$� C$ц&� `�T��7 ������!R~C�0DRqȲ�H`1d����!�l�"�9Ġ C$R�� `��Є7 ������!��C�0DRy���H>I�@� �!It"�>��C$݇� `�d��: ���T��!R F�0D���r�Hl1b@� #Fl"�bĐ C$X���`�ċc6T ��1b���!=F��0D�HR�H2Il@��,��m"�e4� C$Ռ"� `���QD7 ��3����!��F �`0Drш1,�H:1h@��L#Fl"�i4� C�R�&� `����7 ��5����!�F�0D��H�Hda�@��o#�t"�nĠC$ڍ&� `�t���: ��7�\��!� G��0D���Hf1d@�I�#�l�"�qĘ C$U�� `�d�#6 ��9����!=G�0D2�hr�H9Mp@����Hn"�u� C$׎,� `�D�C6X ��;b� �!G �0DB��H4Mx@��̣Io"�yD� C$W�(� `�$�: ��=�D��!��G�0D���1�Hj1�@���Iu"�~4�C$ޏ(� `��#6 ��?b���! J �P0D�A�!*�H`(1f@�� %m"�Ĉ C$R�$� `�d���6 ��Q����!�>J�0DrI)��H?)Et@� .%�n"��Đ C$ٔ��`���6 ��Sb���!�}J�0DJQi��H<*Q|@� N%�o"��$�C$[�$� `���F: �@VbL��!�J �0D�YiR�Hk+M�@��o%�u"ɮd�C$���� `����� �jX����!K�}0De�� $�H�,Y�@���% v"����C$��,� `��ג; �d[�`��!zK��0D�o�� �H-.Y�@�i�%�O�"ݹ��C�W�8�@`���f; �F^�t��!��K� 0D�{ ��H�/a�@���%Lw"����C��0� `��+ ��p��� �!�+N��p0D����H�8}�@�I&��>"����C$Ԝ�� `����w@ ��s����!R�N�}0D����H�:u�@��\��>"����C$���� `���w@ �`w����!��N�}0D"���H;<}�@���� wY $2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B)b0E �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �alignF&0��b0��b0���0��0���0��b0���0�`�0���0� �0��b0�P�0���0��0���0��b0���0�P�0���0��0�@�0���0�!1��$1��%1�`(1��)1�+1�`-1� "z1��b0� "{1� "�1� "�1� "�1� "�1� "�1� "�1��.�5�/�5�0/�5�`/�5��/�5��/�5��/�5� 2�5�P2 6��2!6��2"6��2#6�3$6�@3%6��3(6��3)6�6*6��.26�/36�0/46�`/56��/66��/76��/86� 2=6�P2>6��2?6��2`6��2a6�3b6�@3c6��3f6��3g6�6h6��.p6�/q6�0/r6�`/s6��/t6��/u6��/v6� 2{6�P2|6��2}6��2~6��26�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3 7��3!7�6"7��.*7�/+7�0/,7�`/-7��/.7��//7��/07� 257�P267��277��287��297�3:7�@3;7��3>7��3?7�6`7��6h7��b0��6i7��b0��6j7�7k7��b0�07l7�P7m7��b0�p7n7��7s7��7t7��7u7��7v7�:w7�0:x7�P:y7��:|7��:}7��:~7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6"� ��#oC��Bܔ`0�07&� �� #w���B޴`0��7.� �� #��B��`0�0:2� �� #�c��B��`0��:8� � 3 E �0�1À� C3 Jp�0,3��� �03 O��0@A4� � �D3 T�0TA4�`� �03 X�0dA4à� �D3 \�0tA4��� ��� C`0� �0�A3 d�� C`0�`�0�A3 h3 i3 j3 k03 l03 mD3 nD3 o3 p3 q3 r03 s03 tD3 uD3 v03 wD3 xD3 y3 z3 {3 |03 }03 ~D3 D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 03 !03 "D3 #D3 $3 %3 &3 '03 (03 )D3 *D3 +03 ,D3 -D3 .�� L11� AL�0�D@3 5�� �M71À�M�0�D�3 :�� �N11��M�0�D@3 >�� �O71�M�0�Ep3 b�� �X/1�@AL�0�E3 f�� �Y41À�M�0�Ep3 j�� �Z11��AL�0�E@3 n�� �[71��M�0�E@3 r�� �\71�@�K�0�E3 v�� �]41ÀM�0�Ep3 z�� �^/1��AL�0�E3 ~�� �_41��M�0�Fp3 ��� �h71�@�M�0�F�3 ��� �i11ÀM�0�F@3 ��� �j71���K�0�F3 ��� �k41�M�0�Fp3 ��� �l41�@�M�0�Fp�3������������������������������������������������������������������������������������������������������������������'b b b b b b b b b b b b�n�n�n�n�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�2��t������\�������F j#!7;�6�07�7�0��7��QT�6n7rC7v�7z�7~<�C<ƃ<��<�=�C=փ=��=�>�C>�>��>�?�C?��?��?�DBDDF�DJ�DNERDEV�EZ�E^FbDFf�Fj�FnGrDGv�Gz�G~L�DLƄL��L�M�DMքM��M�N�DN�N��N�O�DO��O��O�TBETF�TJ�TNUREUV�UZ�U^VbEVf�Vj�VnWrEWv�Wz�W~\�E\ƅ\��\�]�E]օ]��]�^�E^�^��^�_�E_��_��_�dBFdF�dJ�dNeRFeV�eZ�e^fbFff�fj�fngrFgv�gz�g~� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,T� � �d��\֏������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`��������4M�������4Ma A,�� � ��6C�A8 ��\Ə`��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,� � �d��\֏������4Ma A,D� � ��6C�A8 ��\Ə`�������4M��������4Ma A,t� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,4� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,d� � �d��\֏������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,$� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,� � �d��\֏������4Ma A,4� � ��6C�A8 ��\Ə`�������4M��������4Ma A,d� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,$� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,d� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,$� � �d��\֏������4Ma A,T� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma Ĉ�� ܇� �pC`f0��,�0K0 TD�B�@�0�c�`�A`���4��#�,a YE,@��P#EzAPF�}@�^�T�xApr2b` ��BpAp r2b` ��BpAp2���2B0K T�p2���2 D0K@ T� �pqQ�*\ �f1�`NSٽQ&$@#�����]& ұX`� �E&$@#�����=&��Twm� ��4Սd� 0�5&�,6o�� f�`NS�U&��T8m� ��`4n� ��4�m� ��4Un� ��4o� ��4�&��T5n� ��4U��>B?BXa!�n� ��<wn� ��4�M�b�!8Meۖ�@��c�!8Me�a Ĉ�� ��� �pC`f0��,�0K0 TD�B�@�0�c�`�A`���4��#�,a YE,@��P#EzAPF�}@�^�T�xApr2b` �qBpAp r2b` ��BpAp2���2B0K T�p2���2 D0K@ T� �pqQ�*\ �f1�`NSٽQ&$@#�����]& ұX`� �E&$@#�����=&��Twm� ��4Սd� 0�5&�,6o�� f�`NS�U&��T8m� ��`4n� ��4�m� ��4Un� ��4o� ��4�&��T5n� ��4U��>B?BXa!�n� ��<wn� ��4�M�b�!8Meۖ�@��c�!8Me�a ���� ��� ˆ�� ��B�@��Ə֏��P����@��a [A,@��EzAPF�}@�^�T�xAPJ����^�������}�������}�` �� � #�`p$�)Ȉ�� ܇ BpApqQA+\ �f5�`NSٽe& ұX`� �A&��T7n� ��4խ�d�!8Mu���0�`� ��4��f��D&�PNS�f�`NS�&��T��`NSյ&��T�%&�շ)&��T5n� ��4o�`� �, n�`4n��`�A`� �,�}[a!�n� �, ��e�!8M�߆�`NS�&@3Դ-&��T�m� ��4��[c!�a ���� ��~ ˆ�� �B�@��Ə֏�`�����#�,>Ra ���� ܇~ A�@��Ə֏@��a [A,@��EzAPF�}@�^�T�xAPJ����^��@@���}���@���}�` ���#�`p$�)Ĉ�� ܇ BpApqQA+\ �f5�`NSټe& ұX`� �E&��T7m� ��4�me�!8Mu���`��ػ�# @3�e�!8M��v�`NS�a&��T�n� �,˭�`4n� ��4�m� ��4Un� ��4o� �YbB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o�`�A`��`� �tD�U&�,�m� � 5m� �,�9&��T� a ���� �� ˆ�� �G�B�@��Ə֏��P����@��a ZA,@��EzAPF�}@�^�T�xAPJ����^�������}������}��\�������}�` � #�`p#�}�� D�p5�A85�`NSٽe& ұX`� �A&��T7n� ��4խ�d�!8Mu���0�`� ��4��f��D6�@̀�`B!8MeaB!8M�[bB!Q}�aB!8M�`!8Me� ��4U]�b�!8MU���`��ܷY&��Txo� ��4U��>B?BX?B Xa!�n� �, n[e�!˂�v�`NS�&@3Դ-&��T�m� ��4��[c!�a ���� �G� ˆ�� ܇�B�@��Ə֏�`�����#�,>Ra ���� �� A�@��Ə֏@��a ZA,@��EzAPF�}@�^�T�xAPJ����^��@@���}��@���}��\��@@���}�` �#�`p#�}�� D�p5�A85�`NSټe& ұX`� �E&��T7m� ��4�me�!8Mu���`��ػ�# @3�e�!8M��v�`NS�a&��T�n� ��4�m� ��4Un� � �&��T�M&�,�n� �YbB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o�`�A`��`� �tD�U&�,�m� � 5m� ��4�}[c!�a Ĉ�� ��� ˆ�� ���pC�f0��,�0K0 TD B�@ �@N3`� 0��#��#��#��#�,��#�,a sE,@��P#UzAP��}@!�^���xAP�����^�������}�������}�` �� � #�`p%�)Ȉ�� �� BpAp2���2B0K T�p2���2 D0K@ T� �pqQ-\ �fA֙�������0H�b� �tD����������0�`� ��4�m� ��4Un� ��4o� �,�}[`!8Me� ��4U]�b�!8MU㶏ƏF�`����#�Y&�,8o� � 5m� ��4�m�c!�b� ��4���c�!8Me��`NSݸI&��T�n� ��<6�`NSݼq&��U&��T8n� ��e�!8M��F�@̀�bB!Q}f�!8M�׶�`NS�&���`NS�}&��T� a Ĉ�� �� ˆ�� �G��pC�f0��,�0K0 TD B�@ �@N3`� 0��#��#��#��#�,��#�,a sE,@��P#UzAP��}@!�^���xAP�����^�������}������}��\�������}�` � #�`p$�}��pC h0��,�0P�vH��pC@ h0�0�,1P�|00�� D�p5�A8A֙�������0H�b� �tD����������0�`� ��4�m� �,�}�aB!8M�[aB!8M�[`!8Me� ��4U]�b�!8MU㶏Ə֏F�`���Y&�,8o� � 5m� ��4�m[c�!8Me��@���c�!8Me��`NSݸI&��T�n� ��<6�`NSݼq&��U&��T8n� ��e�!8M��F�@̀�bB!Q}f�!8M�׶�`NS�&���`NS�}&��T� a � ���}�_ d��Ə֏�0�`��, a aA,@��EzAPF�}@�^�T�xAPJ����^�������}��!Ȉ�� ܇BpAprbB� � #�`p*�}�%� D�p5�A8<�`NSټu& ұX`� �I&��T�m� ��4Սe�!8Mu�f�`NSݼ]&��Two�� ��`NS�i&��T�n� ��`4n� ��4�m� ��4Un� ��4o� �tD�m� ��4�!&��Tum� ��4U�g�!8M�۶�`NS��#��#��#�&�햙`���5& �0XeB ý�aB4CM�b�!8Me�Ƙ`NSٸ9&��Tvn� ��4��[d!�a A ���}�W d��Ə֏�0�`��,��a aA,@��EzAPF�}@�^�T�xAPJ����^��@@���}��!Ĉ�� ܇BpApqaB��#�`p*�}�%� D�p5�A8<6�`NSټu& ұX`� �Q&��T7m� ��4�m�e�!8Mu߆�`NSݹ�# @3�f�!8M�Ӷ�`NS�q&��T8n� ��`4n� ��4�m� �,��aB!8M��aB!8M�[bB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o� ��4U��>B?BX?B Xa!�n� 0 V�P�p�v�P�P���`NSٴA&��T�m� �,�I&��T�a � ���}�_ d��Ə֏�0�`��, a `A,@��EzAPF�}@�^�T�xAPJ����^�������}��!Ȉ�� ��� �}�E�9� \�\������}�` ��'���l�@<�`NSټu& ұX`� �I&��T�m� ��4Սe�!8Mu�f�`NSݼ]&��Two�� ��`NS�i&��T�n� ��`4n� ��4�m� �tD�m� ��4Un� ��4�!&��Tum� ��4U��aB!8M��f�!8M��ƙ`NS��#��#��#�&�햙`���5& �0XeB ý�aB4CM�b�!8Me�Ƙ`NSٸ9&��Tvn� ��4��[d!�a A ���}�X d��Ə֏�0�`��,��a `A,@��EzAPF�}@�^�T�xAPJ����^��@@���}��!Ĉ�� ��� �}�E�9� \�\@�@���}�` ��'���l�@<6�`NSټu& ұX`� �Q&��T7m� ��4�m�e�!8Mu߆�`NSݹ�# @3�f�!8M�Ӷ�`NS�q&��T8n� ��`4n� ��4�m� �,��aB!8M��aB!8M�`!8Me� ��4U][bB!Q}�b�!8MU릘`NSո1&��T5o� ��4U��>B?BX?B Xa!�n� 0 V�P�p�v�P�P���`NSٴA&��T�m� �,�I&��T�a � ���}�_ 7x`� �� ��@@� d �0�c�`�A`��`�0 �@N3�?!�a yE,@��P#UzAP��}@!�^���xAP�����^�������}��!Ȉ�� ��BpAprbB� � #�`p+�}�%�pCP h0��,�0P�~X��pC� h0�0�,1P��00�� D�p5�A8H�`NSټ�&$@#������& ұ�`� �y&$@#�����M&��T�m� ��4Ս[e�!8Mu�֙0�c� ��4��f�!8Mu��P̓��0�`� ��4^�f�!8M��V� 8�&@3�6�PNS�V�PNS妘PHGT�v�PNS��@NSYb�!8MU׶�`NSո}&��Tym� ��4��>B?BX?B �a!�n� �, ��h�!8M���0�`� ��4UޛeB ýbB4CMc�!8Me�֘`NSٸ=&��Tvn� ��4���d!�a � ���}�_ 7x`� �� ��@@� d �0�c�`�A`��`�0 �@N3�?!�a yE,@��P#UzAP��}@!�^���xAP�����^�������}��!Ȉ�� �BpAprbB� � #�`p(�}�%�pCP h0��,�0P�~X��pC� h0�0�,1P��00�� D�p5�A8H�`NSټ�&$@#������& ұ�`� �y&$@#�����M&��T�m� ��4Ս[e�!8Mu�֙0�c� ��4��f�!8Mu��P̓��0�`� ��4^�f�!8M��F�@̀�`B!8Me[aB!8M��bB!Q}�aB!8M�[`!8Me� ��4U]�b�!8MU���`NS�q&��T8o�`�A`��`� �tD�i&�,xn� ��4U��c� ��&��Tyo� 0 �n� � 5m� �c�!8Me�֘`NSٸ=&��Tvn� ��4���d!�a ���� ��� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�@��a ���� ��~ �p1�����Q�D8 ��0�c�`�A`���&��T��#�,>b� ��4a ���� �� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�@��a ���� �G� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�`���a bA,@��UzAP��}@!�^���xApr2b` ��BpAp r2b` ��BpAp r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<��`NSٽ]&��q& ұ�`� �A&��Twm� ��4�}e�!8Mu�&�0�c� ��4���d�!8Mu��`��ؼ& @3�e�!8M�Ӗ�`NS�a&��T�m� ��`B!8Me[aB!8M�a4n� ��4o� ��4��#OD ��b�!8MU㖘`NSպi&��T8o�`�A`��ÿ8f�@HG��f�!8M�Ӷ�`NSٴ1&��T�m� �,�5&��T6a bA,@��UzAP��}@!�^���xApq1b` ��BpAp q1b` ��BpAp q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<�`NSٽq& ұ�`� �M&��T7m� ��4�][e�!8Mu�f�`NSݺI& �f�!8Mu��`��ظe&��Two� � ��`NS�m&��T8n� �a4n� ��4�m� ��4Un� ��4o� ��4�!&��T5m� ��4Um[?��D���-&��T�n� ��4U��>B?B�a!�n��ÿ8v�P�s�֘`NSٴ)&�,��`NSٹA&��T�a bA,@��UzAP��}@!�^���xApr2b` ��BpAp r2b` ��BpAp r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<��`NSٽ]&��q& ұ�`� �A&��Twm� ��4�}�d� 0�U&��T7o� ��4Սe�!8Mu��`��ؼ& @3�e�!8M�ӆ�`NS�e&��T�m� �a4n� ��4�m� ��4Un� ��4�&��T��#OD ��b�!8MU㖘`NSպi&��T8o�`�A`��ÿ8f�@HG��f�!8M�Ӷ�`NSٴ1&��T�m� �,�5&��T6a bA,@��UzAP��}@!�^���xApq1b` ��BpAp q1b` ��BpAp q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<�`NSٽq& ұ�`� �M&��T7m� ��4�][e�!8Mu�f�`NSݺI& �f�!8Mu��`��ظe&��Two� � ��`NS�m&��T8n� �a4n� ��4�m� ��4Un� ��4o� ��4�!&��T5m� ��4Um[?��D���-&��T�n� ��4U��>B?B�?��D��/�&��v�P�s�֘`NSٴ)&�,��`NSٹA&��T�a ��A� �G����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �G����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����Ə@��a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H���� ��#�,a ��A� ������ ��#�,a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H���� ��#�,a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� �ȿ��� ��#�,a ���� ��� A�@��Ə֏@��a ��A� �Ⱦ��� ��#�,a ��A� �H���� ��#�,a ��A� �Ƚ���Ə@��a ��A� �G����Ə@��a ���� �� A�@��Ə֏@��a ���� Ј� A�@��Ə֏@��a ��A� �Ȼ���Ə@��a ��A� �H����Ə@��a ��A� �Ⱥ���Ə@��a ��A� �H����Ə@��a ��A� �ȹ���Ə@��a ��A� �H����Ə@��a ��A� �ȸ���Ə@��a ���� ��� A�@��Ə֏@��a ��A� �ȯ���Ə@��a ��A� �H����Ə@��a ��A� �Ȯ���Ə@��a ��A� �H����Ə@��a ��A� �ȭ���Ə@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �H� B�A8��Ə֏0@�c��, a ��A� �H����Ə@��a ��A� �Ȫ���Ə@��a ��A� �H����Ə@��a ��A� �ȩ���Ə@��a ��A� �H����Ə@��a ��A� �Ȩ���Ə@��a ��A� �H����Ə@��a ��A� �ȟ���Ə@��a ���� ��� A�@��Ə֏@��a ���� �H� B�A8��Ə֏�@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H����Ə@��a ��A� �Ȝ���Ə@��a ��A� �H����Ə@��a ��A� �ț���Ə@��a ��A� �H����Ə@��a ���� �H� B��@��Ə@H�Y?!<Sa ���� �Ț B��@��Ə@H�Y?!<Sa ��A� �ș���Ə@��a ��A� �H����Ə@��a ���� �� A�@Ə��4֏@��a ��A� �H����Ə@��a ��A� �ȏ���Ə@��a ���� ��� A�@Ə��4֏@��a ��A� �Ȏ���Ə@��a ��A� �H����Ə@��a ��A� �ȍ���Ə@��a ��A� �H����Ə@��a ��A� �Ȍ���Ə@��a ��A� �H����Ə@��a ��A� �ȋ���Ə@��a ������ �ɋ A�@��Ə֏@NS�?!�a � ����� �ɋB�@��Ə֏@NS�?!�a ���� �� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a "D,��� ������}��\`�� #�``&-v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa ���� � � A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ���� �I A�@��Ə֏@��a � ����� ��B�@��Ə֏@NS�?!�a ������ �� A�@��Ə֏@NS�?!�a ���� ܇~ A�@��Ə֏@��a ���� ܇~ A�@��Ə֏@��a "D,��� ������}ğ\`�� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa ���� ��} A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��z A�@��Ə֏@��a � ����� � {B�@��Ə֏@NS�?!�a ������ � { A�@��Ə֏@NS�?!�a ���� ��y A�@Ə0T�b�0 !I֏@��a ���� �Iy A�@Ə0T�b�0 !I֏@��a ��A#�`�&�5�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�5�Ə0T�b�0 !I֏04�a��, a ���� �Ix A�@Ə0T�b�0 !I֏@��a ���� ��o A�@Ə0T�b�0 !I֏@��a ���� �Io A�@Ə0T�b�0 !I֏@��a ���� ��n A�@Ə0T�b�0 !I֏@��a ���� �In A�@Ə0T�b�0 !I֏@��a ���� ��m A�@Ə0T�b�0 !I֏@��a ���� �Im A�@Ə0T�b�0 !I֏@��a ���� ��l A�@Ə0T�b�0 !I֏@��a ���� �Il A�@Ə0T�b�0 !I֏@��a ���� ��k A�@Ə0T�b�0 !I֏@��a ���� �Ik A�@Ə0T�b�0 !I֏@��a ���� ��j A�@Ə0T�b�0 !I֏@��a ���� �Ij A�@Ə0T�b�0 !I֏@��a ���� ��i A�@Ə0T�b�0 !I֏@��a ���� �Ii A�@Ə0T�b�0 !I֏@��a ���� ,�5A�@֏0T�b�0 !IƏp�a��, a ���� ,�5A�@֏0T�b�0 !IƏp�a��, a ���� ��_ A�@Ə0T�b�0 !I֏@��a ���� �I_ A�@Ə0T�b�0 !I֏@��a ���� � _ B�A8֏0T�b�0 !IƏp�a��, a �ȈA� �I^� ����@�@ �0�c���4��#��T��PNS��PNS�֏@��a �ȈA� ��]� ����@�@ �0�c���4��#��T��PNS��PNS�֏@��a ;J,@ �� �� �������a��pC�`0�0���� ��^%�1K� 7�2F0bp v�W���#�``'|�,�,�1P�D!��@�z(�p�$��A8F�`��Խ& ��`B!0OM[b�!8̀Ӧ�`N3�&�,7m�� �&�,wo� ��<vm� ��4��#��#��#� &�,a 9J,@ �� �� �����ЕQ�$� E��,�@#�` &u���p�Q��,Ca#�` &v�$�Lj�� ��]-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3v�@N3�`!0�n� �,�]`� 0��#��#�&�,�n� ��<un� ��4��[b�!8�`��@��a 9J,@ �� �� �������Q�$� E��,�@#�` &p���p�Q��,Ca#�` &q�$�Lj�� �I\-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3�@���a!8�`� ��<�&�,vm� ��<��Əf�`��ػ&�Թ%&�� vo� ��4��a 9J,@ �� �� �������Q�$� E��,�@#�` &k���p�Q��,Ca#�` &l�$�Lj�� � [-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3v�@N3�`!0�n� �,�]`� 0��#��#�&�,�n� ��<un� ��4��[b�!8�`��@��a 5J,@� ���,C #�`"cE�$� ���,�@#�`"de� � F� ���A��2Kp��A��U2Kp TD!��@� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`">E�$� ���,�@#�`"?e� � F� ���A��2Kp��A��U2Kp TD!��@� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`�'9E�$� ���,�@#�`�':e� � F� ������2Kp�����T2Kp TD!��@�� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`�'4E�$� ���,�@#�`�'5e� � F� ������2Kp�����T2Kp TD!��@�� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 7J,@ �� �� ������T1K� 7x� ������1K� 7�2F0bP �"S�,�1bP �"S�,�1P�D!��@�z(�p�$��A8��0�c�`� ��4��#�3v�`N3Զ!&�� �m� �,Kn� ��<�&�,� &���@��Xa�!�R�a 7J,@ �� �� ������T1K� 7x� ������1K� 7�2F0bP ��R�,�1bP ��R�,�1P�D!��@�z(�p�$��A8��0�c�`� ��4��#�3v�`N3Զ!&�� �m� �,Kn� ��<�&�,� &���@��Xa�!�R�a � �X�@��Ə@0�@X?!8Ma � �T�@��Ə@0�@X?!8Ma � �`�@��Ə@0�@X?!8Ma ���� � H A�@Ə0T�b�0 !I֏@��a ���� ��? A�@Ə0T�b�0 !I֏@��a ���� � ? A�@Ə0T�b�0 !I֏@��a ���� ��> A�@Ə0T�b�0 !I֏@��a ���� � > A�@Ə0T�b�0 !I֏@��a ���� ��= A�@Ə0T�b�0 !I֏@��a ���� � = A�@Ə0T�b�0 !I֏@��a ���� ��< A�@Ə0T�b�0 !I֏@��a ���� � < A�@Ə0T�b�0 !I֏@��a ���� ��; A�@Ə0T�b�0 !I֏@��a ���� � ; A�@Ə0T�b�0 !I֏@��a ���� ��: A�@Ə0T�b�0 !I֏@��a ���� � : A�@Ə0T�b�0 !I֏@��a ���� ��9 A�@Ə0T�b�0 !I֏@��a ���� � 9 A�@Ə0T�b�0 !I֏@��a ���� ��8 A�@Ə0T�b�0 !I֏@��a ���� � 8 A�@Ə0T�b�0 !I֏@��a ���� ��/ A�@Ə0T�b�0 !I֏@��a ���� � / A�@Ə0T�b�0 !I֏@��a ���� ��. A�@Ə0T�b�0 !I֏@��a ���� � . A�@Ə0T�b�0 !I֏@��a ���� ��- A�@Ə0T�b�0 !I֏@��a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ���� � , A�@Ə0T�b�0 !I֏@��a ���� ��+ A�@Ə0T�b�0 !I֏@��a ���� � + A�@Ə0T�b�0 !I֏@��a ���� ��* A�@Ə0T�b�0 !I֏@��a ���� � * A�@Ə0T�b�0 !I֏@��a ���� ��) A�@Ə0T�b�0 !I֏@��a ���� � ) A�@Ə0T�b�0 !I֏@��a ���� ��( A�@Ə0T�b�0 !I֏@��a ���� � ( A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� ,94A�@֏0T�b�0 !IƏp�a��, a ���� ,74A�@֏0T�b�0 !IƏp�a��, a ���� ,54A�@֏0T�b�0 !IƏp�a��, a ���� ,34A�@֏0T�b�0 !IƏp�a��, a ���� �I B�A8֏0T�b�0 !IƏp�a��, a ���� �� B�A8֏0T�b�0 !IƏp�a��, a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a �ȈA� � ��Ə@NS�>�D�`��, a �ȈA� ȉ��Ə@NS�>�D�`��, a �ȈA� � �� ����@�@ �0�c���4��#��T�&��T��#OD ֏@��a �ȈA� ȉ�� ����@�@ �0�c���4��#��T�&��T��#OD ֏@��a ��A� ������0<Sa ��A� �J����0<Sa ��A� ������0<Sa ��A� �J����0<Sa ��A� ������0<Sa �b�d�@��<a �a�d�@��<a ���d�@��<a ���d�@��<a �b�p�@��pD� �a �a�p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a A, �\`d�`�n@�������`tdld{@�;�;#�`�*��A8��0<Sa A, d�\`��=�C8�<��<�C;�A=������}�l�#�`P ��A8��pD� �a ���� �G� B�A8֏`8E!��# )Ə@�Da ��A� �J��� a ���� � ��Ə0�d�2a ��A� �J���@0��a �pCPa0bp ��7�� Ap�A8Ə@<1�>��a A,@ � ������ ؊�B0��Ə@<1�>��a �pCPa0bp ��7C� Ap�A8Ə@<1�>��a A,@� ������ ؊�B0��Ə@<1�>��a A, 4�\W ��8�C:�C9�C8��:��8́���} #�` a A,@�& !P�\Î$����M���&@�@ �PX�06� 8� & ұX?�!EB 4��# Y`� Q��# )a A,@�& !P�\Î$����M���&@�@ �PX�0�PHT�#֏pH�P a� ��� &ұ���# �>��a A,@�& !P�܈A� � � �a� �A8 �PX�0&�0H�b�CD֏P �2��@0��X`� Qa A,@�& !P�܈A� � � �a� �A8 �PX�0�PHT�#&�PH��#Ə0T@d��@,`�H a A,@�& !P�\Î$����M���&@�@ �PX�06� 8� & ұ?�P��#�L��# )�0HTa A,@�& !P�\Î$����M���&@�@ �PX�0�PHT�#6�@8���`B!��?�P��#�L��# )a A,@�O6!P\Ď$����B$H0�� �PX�0F� 8� & ұ?�P��# )&�0HT`��4� H a A,@�O6!P\Ď$����B$H0�� �PX�0&�PHT�#F�@8���`B!��?�P��# )֏�,@C���a #A,@�& !P�\Î��� 2b� ��7J�0�#�`�+rd�PX�06� 8� & ұX?�!EB 4�&�,�m�CD�0HT`�H�&�,a A,@�& !P�܈A� ���# �`�+y��!�&��A� �J�� �PX�0f�`��Է & ұ?�P��#�L��# )�0HT`� �, a "A,@�& !P�\Î��� 2b� ��7 �0�#�`�+rd�PX�06� 8� & ұ�a�!�R�Ə0T@d��@,`�H�& a!�a #A,@�O6!P\Ď���M2b� ��7K$�hB�����M�A8�PX�0F� 8� & ұb�!�R�Ə0T@d� �D��@0��X?� a�b� �, a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0f�PHT�#֘P8���Ƙ`H��#�&(��D�D-Sm� �t,>b�H��#R$�@C�b�!Q��Ԇ�@8��aBHLDH�2?�Pa MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0֏pH�P a� �D>�#֘p8���>b� �t,>b��&0��D�D-S�#Ə0T@d�H�&ұ���a�HLDH�2��-& �H�#��`8���a FA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�PHT�#��`H��#�&(��D�D-Sm� �t,>b�H�)&�Hm� 1!Q�d�CD֏P �2a HA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�pHT�#>b� �t,>b��&0��D�D-S�#Ə0T@d��@,`�H�&ұ���a�HLDH�2��)& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�PHT�#֘P8���Ƙ`H��#�&(��D�D-Sm� �t,>b�H�-&�Hm� 1!Q�d� ����# Y?B1�a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�pHT�#>b� ����#Ƙ�H��#��XaHLDH�2�>b�CD֏P �2��@0��b��D>�#F���L>b� �t,>�#���HT�#��a JA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�PHT�#�P8���֘`H��#�&(��D�D-Sm� �t,>b�H��# �& )Ƙ`HT�#�%&N�#V���LƏ0T@a MA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�pHT�#>b� ����#֘�H��#���aHLDH�2�>b�CD��@0��X?� a�b� ����b�!����&,��D�D-��c"Q���>a MA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`@*O`d�PX�0V���L�&����>��b� ����Xc��D>�#��#R$�@C�b"Q���Hm� �t,>�#�&$��D�D-��# �a�!���a GA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0V���L�&����>��b� �D>�#�-& ұ����F���LƏ0T@d��@,`� �t,>�#a LA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`@*O`d�PX�0V���L�&����>��b� ����Xc��D>�#�-& ����Ƙ�H��#>baBHLDH�2?�P��#�L�&ұ���a MA,@�OPQsu��`n v@`@p�`�dl@r�{`�9��<��<�{sy��`n v@`�dl@q�ld {p�<�A��#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0f���L�&����>��b��4� H�%&N�#>b� �����Ƙ�HT�#>R[c"����m� 1!Q�d�CD��pH��#>a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0֏pH�P a� �D>�#֘p8���>b� �t,>b��&0��D�D-S�#Ə0T@d�H�!&N�#>b� �t,>�#F���L>b� �D>R�a PA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0���HT�#�����#R$�@C�aB"�����aBHLDH�2���b�D>�#>b�CD��@0���aB"Q�����XcB�D>r���c�"���>�#V���L���a HA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�pHT�#>b� �t,>b��&0��D�D-S�#Ə0T@d��@,`�H�&ұ���a�HLDH�2��)& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0���HT�#����&$ұ�����&4��D�D-�����# Y?B1��>��b� �D>�#>b� �t,>b���Xa�HLDH�2�>�#a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�pHT�#>b� ����#Ƙ�H��#��XaHLDH�2�>b�CD֏P �2��@0��b��D>�#F���L>b� �t,>�#���HT�#��a PA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0���HT�#����&$ұ�����&4��D�D-����!& N�#>�#Ə0T@d��@,`�H�&$�����5&$N�#����1&(ұ���#>b�  1!Q�T���a MA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�pHT�#>b� ����#֘�H��#���aHLDH�2�>b�CD��@0��X?� a�b� ����b�!����&,��D�D-��c"Q���>a PA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0Ƙ�HT�#����!&$ұ�����&4��D�D-����%& N�#>�#Ə0T@d�H��# �& )v��HT�#>�#昐8���>�#֘�H��#����&8��D�D-S�#>a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n���� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,t� 8b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������pn0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2�6�������4MV�������4M���L��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������pnPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� �_�O�H#�d� ��4UMaB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������pn`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������pn`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# ��`�!8MU��@NS�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L� &��T&���L��# �Y`�HLDH�2�F�`NSո&��T5o� 1!Q�d� �_�O�H#�d� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# ��`�!8MU��@NS�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L� &(��D�D-o� 1!Q˴a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� �7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,t� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6�@NSY`�HLDH�2�&���L�&(��D�D-�n� ��4U�[a�!8MU�����L��0<Sd� �_�O�H#�d� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,D� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�6�������4M&���L�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,t� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 8�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� 8Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,�� 8W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,t� 8�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,4� !8�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2�6�������4MV�������4M���L��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� )8�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� 18�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�6�������4M&���L�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 98�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8��0<Sa A,��\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8��0<Sa 2A,�� E8�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� Q8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� ]8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� �7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,t� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,D� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,t� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 8�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� 8Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,�� 8W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,t� 8�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,4� !8�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� )8�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� 18�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 98�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8��0<Sa A,��\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8��0<Sa 2A,�� E8�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� Q8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� ]8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1�Ə ��#�c��t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1�Ə ��#�c��t �a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1�Ə ��#�c��t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1�Ə ��#�c��t �a ���� ��/A�@ƏPT�B��@0��a ���� ��/A�@��@0��?BQ Ea ���� �/A�@��@0��?BQ Ea ���� �/A�@��@0��?BQ Ea ���� �/A�@ƏPT�B��@0��a ���� �/A�@ƏPT�B��@0��a ��A� ��-#�`p�0���@0��X?!�b�E,a ��A� �I-#�`;�0���@0��X?!�b�E,a ���� �- �hB�&�İQ�C8֏@<1�>��b�E,a ���� �- �hB�&�İQ�C8ƏPT�B֏@<1�>��a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ���� �N, �hB�&�İQ�C8ƏPT�B֏@<1�>��a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ��A� �.#�`�;�@� 0� ��@�@֏@<1�>��b�E,a��, a ��A� ��-#�`�;�@� 0� ��@�@ƏPT�B֏@<1�>��b��, a A, $�\U�C8��;�;�C9�������A #�`+���@�� 4a ����� �O* B�A8֏0T�b�0 !IƏp�a��, a ���� ܇)A�@��@0��X?!�b�E,a ���� �)A�@��@0��X?!�b�E,a ���� ܇(A�@��@0��X?!�b�E,a ���� �(A�@��@0��X?!�b�E,a ���� ܇A�@��@0��X?!�b�E,a ���� �A�@��@0��?BQ EX?!�a ���� ܇A�@��@0��X?!�b�E,a ���� �A�@��@0��X?!�b�E,a ���� ܇A�@��@0��X?!�b�E,q y2"�^�4�uJ�`�4�L�b�48�O�d�5Xf[�f�5xv^�h�5��h�j�6��k�l�6�fo�n�7�vz�p�7�|�r�78��t�8Xg��v�8xw��x�8�ǘ�z�9����|�9�g��~�:�w����:`����:8p����;X�����;x�����;�`Ƀ��<�p̃��<�`σ��=�ڃ��>8�郔�>X�����?x�����@�0���@����A����B��.���C�?���D8�O���EX_���FxPn���G�p}���H�����I�@����J�`����KP����K8ʄ��MX�ބ��N��턺�N��N�����OH����O������O�����O�����O8���Ph� ���P� ���P�� ���P(@���Ph����Q�`���Q�����Q(����Qh���Q�����R�)���R((�*���Rh(,���R�(�-���R�(0/���R()�8���Sh)0:���S�)�;���S�)@=���S(*�>���Sh*@H���T�*�I���T�*�K���T(+ M���Th+�N���T�+ X���U�+�Y���U(,P[���Uh,�\���U�,p^���U�,�_���V(-�i���Vh-0k���V�-�l���V�-@n���V(.�o���Wh.Py���W�.�z���W�.P|���W(/0~���WH/����X�/P����X�/И���Y�/p����Y�/����Y8�����YH8�����Zh80����Z�8�����Z�80����[�8л���[9p����[89����\X9�ȅ��\�9�ʅ��\�9�̅��\�9�΅��\8:�؅��]x:�څ��]�:p܅��]�:Pޅ��]8;0腵�^x;ꅹ�^�;셽�^�;���^8<����_x<�����_=P ���`�=����aX>�(���b�>p/���c�?�>���c�?H���d�?�I���d(H�K���dhH�M���d�H`O���e�H@Y���e(I [���ehI]���e�I�^���e�I�h���f(J�j���fhJ�l���f�J�n���f�J�x���g�J�z���g(K�|���ghK`~���g�K@����h�K ����h(L����hhL�����h�L�����i�L�����i(M�����ihM`����i�M@����j�M ����j(N����jhN����j�N ����k�N@����k(O@����khO ����k�O����k�O�Ȇ��l(X�ʆ��lhX�̆��l�X�Ά��l�X`؆��m(Y@چ��mhY ܆��m�Yކ��m�Y�߆��n(Z�醤�nhZ�놨�n�Z�n�Z`�o([�����oH[�����oh[����o�[@����o�[�����o�[����p\P ���pH\� ���px\� ���p�\���q�\����q�\`���r]�)���r(]p-���rh]�9���s�]>���t�]M���u�]�^���v�]�o���w^�����x(^p����zH^ଇ��{h^�����|�^�؇��}�^0���~�^@������^ ��̀_�����(_�����H_@����h_@-�����_p<�����_�K����_`X�����_�[��օh�h��ֆ(h`x��ɇHh�����hh�������h ���҉�hP���Ŋ�h������hp�����i����(i0�����Hi0�����hi`������i�������iP���Џ�i�������i� ����jP����(j�*���Hj�9����hj=�����j@L�����j�X�����j`\����j�_����k k���(k {���HkP���՘hk����ș�k@������k�������kp������k@�����lp�����(l�����Hl�����hl0������l����ٟ�lP������l� ��Ơ�l����m����(m@-����Hmp<����hm0I�����m�L����m`Y����m0i��֦�m`x��ɧn�����(n����ߨHn ���ҩhn������n���Ϊ�n�������np���ޫ�n�����o����ޭ(oP���ٮHo������ho@���ү�o���ڰ�o���ձ�o�(��в�o@8����x<����(x�K���Hx�X����hx�\����x�h�����x@l�����x�|�����xp�����y �����(y`�����Hy����hy`������y������y`������y������y������z������(z� ����Hz�����hz������z������z`.�����z=�����z�K����{�X����({�\����H{�i����h{y�����{������{p������{p������{ �����|�����(|�����H| �����h| ������|�������|P������|������|������}������(} ����H}P����h}+�����}�9�����}�=�����}`L�����}@Y����~P]����(~`i����H~`m����h~�|�����~�������~@������~0������~0�����P�����(������H@�����h����������������������������������� ����(������H� (����h��.�������=������pJ����ȈpN����舐[������j����(��y����H�0�����h�0���������������П����ȉ�������Ю����(�p�����H������x��������������@������������(������H���������������ȋ`������ �����H�������] ���<threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_87_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64llvm.nvvm.associate.access.property.p0i8.p0i8llvm.nvvm.memcpy.async.p3i8.p1i8__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z16__isGridConstantPKvllvm.nvvm.isspacep.grid_const_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z31__cvta_generic_to_grid_constantPKv_Z31__cvta_grid_constant_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj_Z16__match_any_syncjjllvm.nvvm.match.any.sync.i32_Z16__match_any_syncji_Z16__match_any_syncjmllvm.nvvm.match.any.sync.i64_Z16__match_any_syncjl_Z16__match_any_syncjy_Z16__match_any_syncjx_Z16__match_any_syncjf__float_as_uint_Z16__match_any_syncjd__double_as_longlong_Z16__match_all_syncjjPillvm.nvvm.match.all.sync.i32_Z16__match_all_syncjiPi_Z16__match_all_syncjmPillvm.nvvm.match.all.sync.i64_Z16__match_all_syncjlPi_Z16__match_all_syncjyPi_Z16__match_all_syncjxPi_Z16__match_all_syncjfPi_Z16__match_all_syncjdPi_Z11__nanosleepj_Z9atomicCASPttt__usAtomicCAS_Z17__reduce_add_syncjj__reduce_add_sync_unsigned_impl_Z17__reduce_min_syncjj__reduce_min_sync_unsigned_impl_Z17__reduce_max_syncjj__reduce_max_sync_unsigned_impl_Z17__reduce_add_syncji__reduce_add_sync_signed_impl_Z17__reduce_min_syncji__reduce_min_sync_signed_impl_Z17__reduce_max_syncji__reduce_max_sync_signed_impl_Z17__reduce_and_syncjj__reduce_and_sync_unsigned_impl_Z16__reduce_or_syncjj__reduce_or_sync_unsigned_impl_Z17__reduce_xor_syncjj__reduce_xor_sync_unsigned_impl7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! |z !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQl� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@�� ����� ��:���� ��ށ���a~��!�a�������@�l X6�,�$� �b��X�@0 �f� �3b��x�@@ �� e �����H5��=�C;�A8��;�=�=��;��<�=�C8��<�;��;�C9��� ������5������ �����!�!�����A����!܁ʁ� c@�����H�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9� �`a�����HI�`� �A&�1ad�$�@�0�2af$K3�ƙP��<�@ah�DɄ��H�iB@M�h�T�`� �"�gB`M*�� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��2TP��� 5 "PA1� 1��8F�"J�|��� Ȍk�)��ɧ��jPP4(�4����&_8��F�a ( 6����&� ��@ep� �c�)��� ��@" (���F�"J�|J8��FPP:(����i�(a��pDP@�� (����i�(a�)�"P@�Ѓ (����#�����&_:�h�Q�G���8G�"J�|J:�h�Q�G��F�"J�|�p��FB}���>��BΑ��&��'�l$��G�B�i�(a�É� }��G!飏>h�s�)��ɧ�É� }��G!飏>ȑk�)��ɗ'�pD��G}��>����i�(a�)�p� GD}��G)&飏>� Jn���&i���c�)��ɧ�f�Q@2�4�E�"J�|��l$@8��i�(a�)��l$@>�i�(a�f��B�F)D�r�4E�0�H3�(�)��1�Q��SH3�(�*��1�Q��/Nc�(0��@�\#M%L>�8�Q���"�b�r�4E�0���6 0� �`�r�4E�0���4�� (�-@�#M%L��4ƍ 0��`���5�Q��S��7 0��B�b�P/�HSD ��8��#� 0��`�0�HSD �O-Nc��0� (�0`�4� �5�Q���L5 �)�1��1�HSD �_,0�H(��2$SL1��5�Q���L7�)��B0SL1�P3�HSD �_,0�(��b�)�3�SL1�A�Q��/Nc,Nc�(0��@�\$M%L>�8��8�Q���"TcYs�4E�0�����6 0� �`es�4E�0���4��4�� (�6@�$M%L��4��4ƍ 0��`���E�Q��S����7 0��B�c��8ISD ��8��8��#� 0��`�P9ISD �O-Nc,Nc��0� (�9`����9�Q��,D�u���:��9�Q��,��u�)�;�C�#M%L��P�B�hPGu �:�C�#M%L��P�B��PGu�)=ꨣ�:TO���O!� h�RT@��b�"�T ���PL1TP�Q�*C1�C ���b��ʠ�:PCTL�)�!�� ��IT�b�1�(*D1��YT�!� QL1�C�bz�8*C1C�Au�!�ʠ�:�HeP�u��2`�dRPB� �<T �T0�X*� `�T ( ��$S)�QGu � ��:�C6Bu��p*�@:��u ��`�:�S�1��@B�A �ʠN1�Q�N�AJJ�P@KA� ��"P=U�+���p�TF@�BTZ�U���*FU�V�(�b��*B1�W�0��*�:�$V h��*�Y�G�@�Ң5���Z��Q�;ܢ���"�E���.���Ex�)E8E/ڋ�)6}�_�F��#=���`DR�C ��h�"L�)F��ƨ1R��<F��6E�F2���<D�A��2J��dF��3Ex�3��)�;�he��H�2\QDZ�@�2� W(�V�+�Z�T+�n�A��ኸ!��p]�le��.NH�2\��)D[�� �� W��V�+Ӄt+��B����&!��pc�pe��1UH�2\!�6D\�x�2� W �!W�+2K��+��=C̕���!��te�bH�2�:D]!Ⱥ2T�]!�H�2T��]!�ȻB�: x���>� ��(b�*�E@�J� �W�ԡ����Z��!��[$�����E���>����E���H�"ħ�g (�}�E@0 �� F�>è�"ܗX����c�`���4B1����BCSL1�AB�hB#��N*��,,�@⊵�4,�n���"�>� �q]}��Gb!�� H�b\��X�+�2�2�W�b1� �T,�����X�+룏>�  qc@0��H�B\!����"�b�!�qg�SL1�c!��LuHG,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8�1�`� �a��0;��{ � �e�p�c0 � �H�`��q�b0�($r�8j1�`��`� @���\0�[  ��L..��'�#��v@~� ơ��@;������` �|�q�b0�(�r�8z1�`$v�`� @�ڿ\0�_  ��b� ���@;�� r�8�1�`d�A.�8�~5���` ���`� @�������v@��r�c0���Y@�|  ��x@ ȡ��@;�qd9�1�`T��+�9�FPp�8�` �P, �`� @��I��#��v@�)��q�c0�hOW0�u  ���� ����@;��\�8�1�`TƂ+�;��Yp�x�` �Ph �`� @�zq��#��v@�.��q�c0�h�W0�y  ��� �A��@;�S\�8�1�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��m� @ �f��q�`�4��� @ �d�x��!R�P:p0D�_b�H!LD�@�I��HP"�1!� C�:&$|�`�t�Ĵ4 �t����!�:�Hp0D�g"* �H,MH(@�ɧ i%P"�51� C��&���`�d�E4 �ԛhn��!�}�N0D2q�� �H4N@`@��̉g,"�9�C$R' � `�D넴 �̝x���!R�P\0D*y� �H5ODw@���H/"�=!�C��'$� `����4 �ܟ�N��!���j0Dz�Bj �HaXL�@���i6"�bA�C�],�� `��E� �H��~��!RN�x0Dz��*�H�Y\�@��7��="�g!�C��,&� `�$�U �̴����!���}0D��B��H�Z@�@�iW��>�"�j!�C$x-�� `�į�� �T�`���!���}0D�����Hl[0�@� o '?"�n��C$�-�� `����� �з����!R�S~0Db�"��H=\L�@� � '?"�q�C$W.�� `���� �عp���!�>P~0DR����H8]@�@� ��)?"�uQ�C$�.�� `�4�E� ��`���!��~0D����H<^0�@� � �?"�y��C$R/�� `�$�� ���X���!Һ�0D��b �H _$!@�)�%D"�|��C$�/�� `���E�@ ��`B��!��H�0D:�� �H�_$!@�����?"���C��/� `�d��"@ ���HB��!� H�0DrA#��H7h �@���$D"��q�C�74� `���"@ �@�8F��!�)ň0DbE��H�h%@�I��D�"��q�C$s4� `���R" ���@J��!�>E�0D�G#)�H(i%@��% �D"٤Q�C��4� `�4��"@ ���@V��!�[ʊ0D�Ki�H�i$-@�I5��D"ŦA�C��4� `�䛆Q"@ ���HR��!R{E�0D�OC��H�i0@�)D��D"��A�C$5 `�t��!#@ �z�PV��!ҙƊ0DjS)�Huj%@�IO��D"��A�C�R5� `�ԪFQ"@ �d�@J��!��E�0D�U�(�H�j%@�I] �D"ɫQ�C�{5� `���FQ"@ �H�PR��!��F�0D�Y�(�H;k%@��g �D"��Q�C$�5� `�D�FQ"@ ���H���!���0DB]cY�H�k+@�Iw �F"����C$�5� `�d�FQ"@ ���HJ��! F�0DRa)�H2l%@�醍�D"��a�C$36� `��ƆQ"@ ���HJ��!�F�0D"e#)�H�l%@�i� %E"��a�C�q6� `���FQ"@ ���8J��!�=D�0D�g)�H#m%@� � �D"ɴq�C��6� `�4��Q"@ ���hR��!�]I�0Dm�I�H�m()@� � 'E"����C$�6 `����a#@ �H�HJ��!R�F�0D�qC��H=n8@��̍G"����C�;7� `��Q"@ �L�@J��!��E�0D�u#��H�n8@�I� G"��q�C�y7� `��R"@ �T�HR��!��E�0D�y#��Hao:@���$E"��Q�C��7� `���F�"@ �B�HJ��!��F�0D�}#)�H�o%@�����D"��a�C$�7� `�t��Q"@ ���HJ��!� F�0Db���H<x$<@�� �G"��q�C$=<� `���P"@ �F�0J��!R*C�0Db����H�x >@���D"��1�C�_<� `�T��P"@ ���8|��!�;��0D��C*�H$y8%@�I&�D"���C$�<� `�ė�Q"@ �F�XJ��!�kH�0D���)�H�y,%@� >��D"�灔C�=� `�Ģ�Q"@ �d�h���!ҏ��0D:ӣ!�Htz�@� O�>"���C$T=3 `��Ga&@ �j�@���!R���0D�1�H�z f@�i^�L"�끘 C��=3 `���b& �f�@R��!����0Dۃ �Hg{ d@��mL"��A�C��=�� `�4�r �V�@���!����0D��1�H�{f@��|�L"� C$�=3 `��b& �L�@���!� ��0D��I�H>| b@�ɌBL�"�� C$9>0 `���ǃ& �R�`���!R-�0D"�A �H�|<h@�韏M"��� C��>4 `���G�& ���h���!�j��0D���Q �H�}<h@��M�"��� C$?4 `���ǃ& ���`���!R��0DB��A �H�~<h@�i�M�"��� C$?4 `���ǃ& �r�`���!R��0D���A �H�8h@����M�"��� C��?4 `�$�ǃ& �Ba���!R "�0D�A�A �Hh�@ C$<D���!)"�@��f `����& ��q���!R?"�0DrI�a �H=�@n@��-�M�"�%r� C$�D 9 `�t��'8 �\)���!�l"�0DZO� �H� v@�i?�N�"�(�� C�E0< `�4�H"&@ ��I���!R�"��0D�S$ �H��`x@��W�DL�"�+�� C�xE1 `���H"&@ �F����!��"��0D"[$ �Hm�$b@��n�DL�"�-�� C��E� `�ľ�"@ ��yB��!� #O�0D�a���Hx�@!@� �(D�"�2�C$tF� `����' �hq���!�X#��0D�k�� �H~�8~@����O"�7�� C��F? `�����'@ �ny���!��#�0Du� �H��8�@���GT�"�;� C$}G<P `����#*@ ��yD��!��#��0D*}� �H��x�@�I���T"�`�@�)�GM"�b¨ C$VL6 `�����&@ ��1y���!>&�0D2��a�H5�4l@�I,�M"�e° C$�L6 `���I�&@ �p3y���!�y&�0D���a�H$�8l@�IF��M"�i� C�7M6 `�ԧI�&@ �T5y���!R�&�0D:��I�H��0�@�Id M"�l"� C$�M.4 `��Ʉ&@ �h7����!��&�0D���B�H3�Lh@�Ɍ�M"�qB� C$XN.6 `�t�I�&@ ��9����!�L'��0D"��R�H{�Lj@�ɵ+U"�w"� C$�N�T `���ɔ*@ ��<����!��'�0Dj��B�H�\h@�Iߓ M"�|2� C$�O04 `��� �&@ �`?����!��'�0D��C�H2�Ph@�� ��M"��R� C$YT06 `�����&@ �@R����!�M*��0DRKS�H��Pj@��6 M"��"� C$�T.4 `�T�ʄ&@ ��T����!��*�0D�U�b�H�Tl@��_ M"Ѭ"� C$�U.4 `�Էʄ&@ �`W����!��*�0D�_�b�H1�Tl@�Ɍ M"�"� C$WV.4 `�T�ʄ&@ ��Y����!�K+�0Dk�b�Hy�Tl@�ɵ M"��"� C$�V.4 `���ʄ&@ ��\����!��+�0DRu�b�H�Tl@��� M"��"� C$�W.4 `�T�ʄ&@ �P_����!��+�0D��B�H'�Lh@�I�k `����0D�["��2-@ ��q��H%�H C��\���!�[.�@�I4��M"��B� C��\07 `�T�K�&@ �tt����!�.�0D��B�H��Lh@��]�M"��2� C��].6 `�Ķ �&@ �@w����!��.�0DB��B�H��Lh@�I��M"��B� C$>^.6 `�4�K�&@ ��y����!R?/�0Dr��B�Hd�Hh@�ɮ��M"��"� C��^,6 `�4���&@ �L|����!Ҏ/�0Db��B�H��Hh@��֗�M"��2� C$~_,6 `�$� �&@ ��~����!�/�0Dr��B�H�Lh@� ��M"� 3� C�0d.6 `��� �&@ �X�����!�82�0D�G�B�H+�Lh@��'�M"�%C� C$�d.6 `���L�&@ ��QV�!�2��0D2Q�Z �H<�Lr@��M Np"�*� C$Ze&8�`�t� $'@ ����!�2Y��0D [&��Hr�d���iu�)"�.�� C$�e�8 `�T� �*@< �z�����!3]��0D�e�{�H��|�@�饙0x�Hp�x�@�ɵ��"�7��C$g�Z `�t� W  �F�1�W `��� �C��g�� `���L�@@ �ʞ�b��!�3V�0Dr}F��H��h�@�I�'V"�`s� C$4l�� `����d+@H �V�����!�.6�}0DZ�f��H��DC��l&\ `�$�ͥ+@H ��p��!k6�0D����H��`�@� F W"�is� C�?m.\ `�d���+ �ҵq���!ҽ6��0D*����H;�`�@�in��W"�n3� C��m&p `���. �L�����!7�0D���H��\�@�i�� \"�s3� C��n,q `�4� &. �������!�l7�0D*�f�H��X�@��� \"�y�� C$>o0p `�D��. �ֽ����!��7 �0Dj�f!�H8�,���i��\�"�}�� C��o��!�7 �0Dz�b�H��@�@����H^"��� C�t| `��γ/ ��С���!�(:��@0DrEgI(�H��,C$rtr `��N2 �@҉H��!RL:��0DKGR�Hu�@-@��4f"զc� C��t�� `�d��r3 �Bԉt��!��:Q�0DSG�Hu�0�@�)T�\"��Ø C�\us``�T��.L ���a �H��0�@�)e��]"�� C��u$y `�Է�T/ �^ׁ���!��:о0Dz_���H$�0�� �&]�"��@ ���a���!;R�0D2eG"�H��L'@�i��Ie"��� C��v"� `���53 ���aj��!�h;��0DzmG��H��H=@�i�� l"��Ð C$wr `���c.L ���a�� �!��;L�00Du��"��Ð C$]w"v `���N�. ��ݑ���!��;R�0D{��Hp�@�@� ���_"վØ C��w�t�`���0D��!�H%�H!@���d"��3� C$>|&� `��O�2 ���`��!R<>��0DBɇ��H4�07@� ,Ig"��#� C$�|&� `�t�C. ���a���!�{>��00D�χ1&�H'�0���iF `���C. ������!�>ѻ0Dj�G��H��H�@�)^_"��� C��}* `�d�c.P ���a� �!��> @�Iu�\"��#� C$�}$� `����t2 �Z��T��!?Q�0D��'��H��\3@�)��f"���� C�x~$� `�4ҏ�3 �j�����!Z? �0D��!�H��0������\�"��ä C$�~��!|? �0D��'b�H-�D�@���I^"��#� C$Q | `�$��/ �������!ҽ?��@0D��I(�H/�0C��r `�t��2 ����H��!��?��0D��gR�H��D-@�I�f"� t� C$5��� `�d�s3 �D�t��!-BR�0D2Gh�H�1�@��$!�\"�$Ę C���s``����.L ��b �H� 1�@��5��]"�&� C���$y `���T/ �f����!ҘBо0D�S���H� 1���V!&]�"�+�@ ��b���!�BR�0DRYH"�H< M'@��m�Ie"�.� C�م"� `�D��53 ��bj��!� C��0D�aH��He I=@�鎡 l"�2Ĉ C$[�� `�$�C6T ��b�� �!�>C��P0D2i�A�H2 1b@�ɧ!Im"�5$� C$ц&� `�T��7 ������!R~C�0DRqȲ�H`1d����!�l�"�9Ġ C$R�� `��Є7 ������!��C�0DRy���H>I�@� �!It"�>��C$݇� `�d��: ���T��!R F�0D���r�Hl1b@� #Fl"�bĐ C$X���`�ċc6T ��1b���!=F��0D�HR�H2Il@��,��m"�e4� C$Ռ"� `���QD7 ��3����!��F �`0Drш1,�H:1h@��L#Fl"�i4� C�R�&� `����7 ��5����!�F�0D��H�Hda�@��o#�t"�nĠC$ڍ&� `�t���: ��7�\��!� G��0D���Hf1d@�I�#�l�"�qĘ C$U�� `�d�#6 ��9����!=G�0D2�hr�H9Mp@����Hn"�u� C$׎,� `�D�C6X ��;b� �!G �0DB��H4Mx@��̣Io"�yD� C$W�(� `�$�: ��=�D��!��G�0D���1�Hj1�@���Iu"�~4�C$ޏ(� `��#6 ��?b���! J �P0D�A�!*�H`(1f@�� %m"�Ĉ C$R�$� `�d���6 ��Q����!�>J�0DrI)��H?)Et@� .%�n"��Đ C$ٔ��`���6 ��Sb���!�}J�0DJQi��H<*Q|@� N%�o"��$�C$[�$� `���F: �@VbL��!�J �0D�YiR�Hk+M�@��o%�u"ɮd�C$���� `����� �jX����!K�}0De�� $�H�,Y�@���% v"����C$��,� `��ג; �d[�`��!zK��0D�o�� �H-.Y�@�i�%�O�"ݹ��C�W�8�@`���f; �F^�t��!��K� 0D�{ ��H�/a�@���%Lw"����C��0� `��+ ��p��� �!�+N��p0D����H�8}�@�I&��>"����C$Ԝ�� `����w@ ��s����!R�N�}0D����H�:u�@��\��>"����C$���� `���w@ �`w����!��N�}0D"���H;<}�@���� wY $2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B)b0E �8�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y bH C� 9$��@���h"P2�!GȐQ �alignF&0��b0��b0���0��0���0��b0���0�`�0���0� �0��b0�P�0���0��0���0��b0���0�P�0���0��0�@�0���0�!1��$1��%1�`(1��)1�+1�`-1� "z1��b0� "{1� "�1� "�1� "�1� "�1� "�1� "�1��.�5�/�5�0/�5�`/�5��/�5��/�5��/�5� 2�5�P2 6��2!6��2"6��2#6�3$6�@3%6��3(6��3)6�6*6��.26�/36�0/46�`/56��/66��/76��/86� 2=6�P2>6��2?6��2`6��2a6�3b6�@3c6��3f6��3g6�6h6��.p6�/q6�0/r6�`/s6��/t6��/u6��/v6� 2{6�P2|6��2}6��2~6��26�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3 7��3!7�6"7��.*7�/+7�0/,7�`/-7��/.7��//7��/07� 257�P267��277��287��297�3:7�@3;7��3>7��3?7�6`7��6h7��b0��6i7��b0��6j7�7k7��b0�07l7�P7m7��b0�p7n7��7s7��7t7��7u7��7v7�:w7�0:x7�P:y7��:|7��:}7��:~7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6"� ��#oC��Bܔ`0�07&� �� #w���B޴`0��7.� �� #��B��`0�0:2� �� #�c��B��`0��:8� � 3 E �0�1À� C3 Jp�0,3��� �03 O��0@A4� � �D3 T�0TA4�`� �03 X�0dA4à� �D3 \�0tA4��� ��� C`0� �0�A3 d�� C`0�`�0�A3 h3 i3 j3 k03 l03 mD3 nD3 o3 p3 q3 r03 s03 tD3 uD3 v03 wD3 xD3 y3 z3 {3 |03 }03 ~D3 D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �3 �3 �3 �03 �03 �D3 �D3 �03 �D3 �D3 �3 �3 �3 03 !03 "D3 #D3 $3 %3 &3 '03 (03 )D3 *D3 +03 ,D3 -D3 .�� L11� AL�0�D@3 5�� �M71À�M�0�D�3 :�� �N11��M�0�D@3 >�� �O71�M�0�Ep3 b�� �X/1�@AL�0�E3 f�� �Y41À�M�0�Ep3 j�� �Z11��AL�0�E@3 n�� �[71��M�0�E@3 r�� �\71�@�K�0�E3 v�� �]41ÀM�0�Ep3 z�� �^/1��AL�0�E3 ~�� �_41��M�0�Fp3 ��� �h71�@�M�0�F�3 ��� �i11ÀM�0�F@3 ��� �j71���K�0�F3 ��� �k41�M�0�Fp3 ��� �l41�@�M�0�Fp�3������������������������������������������������������������������������������������������������������������������'b b b b b b b b b b b b�n�n�n�n�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n�2��t������\�������F j#!7;�6�07�7�0��7��QT�6n7rC7v�7z�7~<�C<ƃ<��<�=�C=փ=��=�>�C>�>��>�?�C?��?��?�DBDDF�DJ�DNERDEV�EZ�E^FbDFf�Fj�FnGrDGv�Gz�G~L�DLƄL��L�M�DMքM��M�N�DN�N��N�O�DO��O��O�TBETF�TJ�TNUREUV�UZ�U^VbEVf�Vj�VnWrEWv�Wz�W~\�E\ƅ\��\�]�E]օ]��]�^�E^�^��^�_�E_��_��_�dBFdF�dJ�dNeRFeV�eZ�e^fbFff�fj�fngrFgv�gz�g~� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,T� � �d��\֏������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`��������4M�������4Ma A,�� � ��6C�A8 ��\Ə`��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,� � �d��\֏������4Ma A,D� � ��6C�A8 ��\Ə`�������4M��������4Ma A,t� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,4� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,d� � �d��\֏������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,$� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,� � �d��\֏������4Ma A,4� � ��6C�A8 ��\Ə`�������4M��������4Ma A,d� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,$� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,d� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,�� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,$� � �d��\֏������4Ma A,T� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,�� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,t� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma A,�� � �d��\֏������4Ma A,�� � ��6C�A8 ��\Ə`�������4M��������4Ma A,� � �6D0�B�@ ��\Ə`֏d�������4M��������4M�������4Ma A,D� � A�6E0��lCP ��������4M&�������4M�X��\Ə`֏d6�������4M�������4Ma Ĉ�� ܇� �pC`f0��,�0K0 TD�B�@�0�c�`�A`���4��#�,a YE,@��P#EzAPF�}@�^�T�xApr2b` ��BpAp r2b` ��BpAp2���2B0K T�p2���2 D0K@ T� �pqQ�*\ �f1�`NSٽQ&$@#�����]& ұX`� �E&$@#�����=&��Twm� ��4Սd� 0�5&�,6o�� f�`NS�U&��T8m� ��`4n� ��4�m� ��4Un� ��4o� ��4�&��T5n� ��4U��>B?BXa!�n� ��<wn� ��4�M�b�!8Meۖ�@��c�!8Me�a Ĉ�� ��� �pC`f0��,�0K0 TD�B�@�0�c�`�A`���4��#�,a YE,@��P#EzAPF�}@�^�T�xApr2b` �qBpAp r2b` ��BpAp2���2B0K T�p2���2 D0K@ T� �pqQ�*\ �f1�`NSٽQ&$@#�����]& ұX`� �E&$@#�����=&��Twm� ��4Սd� 0�5&�,6o�� f�`NS�U&��T8m� ��`4n� ��4�m� ��4Un� ��4o� ��4�&��T5n� ��4U��>B?BXa!�n� ��<wn� ��4�M�b�!8Meۖ�@��c�!8Me�a ���� ��� ˆ�� ��B�@��Ə֏��P����@��a [A,@��EzAPF�}@�^�T�xAPJ����^�������}�������}�` �� � #�`p$�)Ȉ�� ܇ BpApqQA+\ �f5�`NSٽe& ұX`� �A&��T7n� ��4խ�d�!8Mu���0�`� ��4��f��D&�PNS�f�`NS�&��T��`NSյ&��T�%&�շ)&��T5n� ��4o�`� �, n�`4n��`�A`� �,�}[a!�n� �, ��e�!8M�߆�`NS�&@3Դ-&��T�m� ��4��[c!�a ���� ��~ ˆ�� �B�@��Ə֏�`�����#�,>Ra ���� ܇~ A�@��Ə֏@��a [A,@��EzAPF�}@�^�T�xAPJ����^��@@���}���@���}�` ���#�`p$�)Ĉ�� ܇ BpApqQA+\ �f5�`NSټe& ұX`� �E&��T7m� ��4�me�!8Mu���`��ػ�# @3�e�!8M��v�`NS�a&��T�n� �,˭�`4n� ��4�m� ��4Un� ��4o� �YbB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o�`�A`��`� �tD�U&�,�m� � 5m� �,�9&��T� a ���� �� ˆ�� �G�B�@��Ə֏��P����@��a ZA,@��EzAPF�}@�^�T�xAPJ����^�������}������}��\�������}�` � #�`p#�}�� D�p5�A85�`NSٽe& ұX`� �A&��T7n� ��4խ�d�!8Mu���0�`� ��4��f��D6�@̀�`B!8MeaB!8M�[bB!Q}�aB!8M�`!8Me� ��4U]�b�!8MU���`��ܷY&��Txo� ��4U��>B?BX?B Xa!�n� �, n[e�!˂�v�`NS�&@3Դ-&��T�m� ��4��[c!�a ���� �G� ˆ�� ܇�B�@��Ə֏�`�����#�,>Ra ���� �� A�@��Ə֏@��a ZA,@��EzAPF�}@�^�T�xAPJ����^��@@���}��@���}��\��@@���}�` �#�`p#�}�� D�p5�A85�`NSټe& ұX`� �E&��T7m� ��4�me�!8Mu���`��ػ�# @3�e�!8M��v�`NS�a&��T�n� ��4�m� ��4Un� � �&��T�M&�,�n� �YbB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o�`�A`��`� �tD�U&�,�m� � 5m� ��4�}[c!�a Ĉ�� ��� ˆ�� ���pC�f0��,�0K0 TD B�@ �@N3`� 0��#��#��#��#�,��#�,a sE,@��P#UzAP��}@!�^���xAP�����^�������}�������}�` �� � #�`p%�)Ȉ�� �� BpAp2���2B0K T�p2���2 D0K@ T� �pqQ-\ �fA֙�������0H�b� �tD����������0�`� ��4�m� ��4Un� ��4o� �,�}[`!8Me� ��4U]�b�!8MU㶏ƏF�`����#�Y&�,8o� � 5m� ��4�m�c!�b� ��4���c�!8Me��`NSݸI&��T�n� ��<6�`NSݼq&��U&��T8n� ��e�!8M��F�@̀�bB!Q}f�!8M�׶�`NS�&���`NS�}&��T� a Ĉ�� �� ˆ�� �G��pC�f0��,�0K0 TD B�@ �@N3`� 0��#��#��#��#�,��#�,a sE,@��P#UzAP��}@!�^���xAP�����^�������}������}��\�������}�` � #�`p$�}��pC h0��,�0P�vH��pC@ h0�0�,1P�|00�� D�p5�A8A֙�������0H�b� �tD����������0�`� ��4�m� �,�}�aB!8M�[aB!8M�[`!8Me� ��4U]�b�!8MU㶏Ə֏F�`���Y&�,8o� � 5m� ��4�m[c�!8Me��@���c�!8Me��`NSݸI&��T�n� ��<6�`NSݼq&��U&��T8n� ��e�!8M��F�@̀�bB!Q}f�!8M�׶�`NS�&���`NS�}&��T� a � ���}�_ d��Ə֏�0�`��, a aA,@��EzAPF�}@�^�T�xAPJ����^�������}��!Ȉ�� ܇BpAprbB� � #�`p*�}�%� D�p5�A8<�`NSټu& ұX`� �I&��T�m� ��4Սe�!8Mu�f�`NSݼ]&��Two�� ��`NS�i&��T�n� ��`4n� ��4�m� ��4Un� ��4o� �tD�m� ��4�!&��Tum� ��4U�g�!8M�۶�`NS��#��#��#�&�햙`���5& �0XeB ý�aB4CM�b�!8Me�Ƙ`NSٸ9&��Tvn� ��4��[d!�a A ���}�W d��Ə֏�0�`��,��a aA,@��EzAPF�}@�^�T�xAPJ����^��@@���}��!Ĉ�� ܇BpApqaB��#�`p*�}�%� D�p5�A8<6�`NSټu& ұX`� �Q&��T7m� ��4�m�e�!8Mu߆�`NSݹ�# @3�f�!8M�Ӷ�`NS�q&��T8n� ��`4n� ��4�m� �,��aB!8M��aB!8M�[bB!Q}`!8Me� ��4U]�b�!8MU㶘`NSպ1&��T5o� ��4U��>B?BX?B Xa!�n� 0 V�P�p�v�P�P���`NSٴA&��T�m� �,�I&��T�a � ���}�_ d��Ə֏�0�`��, a `A,@��EzAPF�}@�^�T�xAPJ����^�������}��!Ȉ�� ��� �}�E�9� \�\������}�` ��'���l�@<�`NSټu& ұX`� �I&��T�m� ��4Սe�!8Mu�f�`NSݼ]&��Two�� ��`NS�i&��T�n� ��`4n� ��4�m� �tD�m� ��4Un� ��4�!&��Tum� ��4U��aB!8M��f�!8M��ƙ`NS��#��#��#�&�햙`���5& �0XeB ý�aB4CM�b�!8Me�Ƙ`NSٸ9&��Tvn� ��4��[d!�a A ���}�X d��Ə֏�0�`��,��a `A,@��EzAPF�}@�^�T�xAPJ����^��@@���}��!Ĉ�� ��� �}�E�9� \�\@�@���}�` ��'���l�@<6�`NSټu& ұX`� �Q&��T7m� ��4�m�e�!8Mu߆�`NSݹ�# @3�f�!8M�Ӷ�`NS�q&��T8n� ��`4n� ��4�m� �,��aB!8M��aB!8M�`!8Me� ��4U][bB!Q}�b�!8MU릘`NSո1&��T5o� ��4U��>B?BX?B Xa!�n� 0 V�P�p�v�P�P���`NSٴA&��T�m� �,�I&��T�a � ���}�_ 7x`� �� ��@@� d �0�c�`�A`��`�0 �@N3�?!�a yE,@��P#UzAP��}@!�^���xAP�����^�������}��!Ȉ�� ��BpAprbB� � #�`p+�}�%�pCP h0��,�0P�~X��pC� h0�0�,1P��00�� D�p5�A8H�`NSټ�&$@#������& ұ�`� �y&$@#�����M&��T�m� ��4Ս[e�!8Mu�֙0�c� ��4��f�!8Mu��P̓��0�`� ��4^�f�!8M��V� 8�&@3�6�PNS�V�PNS妘PHGT�v�PNS��@NSYb�!8MU׶�`NSո}&��Tym� ��4��>B?BX?B �a!�n� �, ��h�!8M���0�`� ��4UޛeB ýbB4CMc�!8Me�֘`NSٸ=&��Tvn� ��4���d!�a � ���}�_ 7x`� �� ��@@� d �0�c�`�A`��`�0 �@N3�?!�a yE,@��P#UzAP��}@!�^���xAP�����^�������}��!Ȉ�� �BpAprbB� � #�`p(�}�%�pCP h0��,�0P�~X��pC� h0�0�,1P��00�� D�p5�A8H�`NSټ�&$@#������& ұ�`� �y&$@#�����M&��T�m� ��4Ս[e�!8Mu�֙0�c� ��4��f�!8Mu��P̓��0�`� ��4^�f�!8M��F�@̀�`B!8Me[aB!8M��bB!Q}�aB!8M�[`!8Me� ��4U]�b�!8MU���`NS�q&��T8o�`�A`��`� �tD�i&�,xn� ��4U��c� ��&��Tyo� 0 �n� � 5m� �c�!8Me�֘`NSٸ=&��Tvn� ��4���d!�a ���� ��� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�@��a ���� ��~ �p1�����Q�D8 ��0�c�`�A`���&��T��#�,>b� ��4a ���� �� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�@��a ���� �G� �p1�����Q�D8 ��0�c�`�A`���&��T�&��T�`���a bA,@��UzAP��}@!�^���xApr2b` ��BpAp r2b` ��BpAp r 2� gpq0l@`A�\� 7�\@\@ \�����l�@<��`NSٽ]&��q& ұ�`� �A&��Twm� ��4�}e�!8Mu�&�0�c� ��4���d�!8Mu��`��ؼ& @3�e�!8M�Ӗ�`NS�a&��T�m� ��`B!8Me[aB!8M�a4n� ��4o� ��4��#OD ��b�!8MU㖘`NSպi&��T8o�`�A`��ÿ8f�@HG��f�!8M�Ӷ�`NSٴ1&��T�m� �,�5&��T6a bA,@��UzAP��}@!�^���xApq1b` ��BpAp q1b` ��BpAp q 1� gpq0l@`A@\@ 7�\@\@ \�����l�@<�`NSٽq& ұ�`� �M&��T7m� ��4�][e�!8Mu�f�`NSݺI& �f�!8Mu��`��ظe&��Two� � ��`NS�m&��T8n� �a4n� ��4�m� ��4Un� ��4o� ��4�!&��T5m� ��4Um[?��D���-&��T�n� ��4U��>B?B�a!�n��ÿ8v�P�s�֘`NSٴ)&�,��`NSٹA&��T�a bA,@��UzAP��}@!�^���xApr2b` ��BpAp r2b` ��BpAp r 2� ipq0l@`A�\� 7A\@\@ \�����l�@<��`NSٽ]&��q& ұ�`� �A&��Twm� ��4�}�d� 0�U&��T7o� ��4Սe�!8Mu��`��ؼ& @3�e�!8M�ӆ�`NS�e&��T�m� �a4n� ��4�m� ��4Un� ��4�&��T��#OD ��b�!8MU㖘`NSպi&��T8o�`�A`��ÿ8f�@HG��f�!8M�Ӷ�`NSٴ1&��T�m� �,�5&��T6a bA,@��UzAP��}@!�^���xApq1b` ��BpAp q1b` ��BpAp q 1� ipq0l@`A@\@ 7A\@\@ \�����l�@<�`NSٽq& ұ�`� �M&��T7m� ��4�][e�!8Mu�f�`NSݺI& �f�!8Mu��`��ظe&��Two� � ��`NS�m&��T8n� �a4n� ��4�m� ��4Un� ��4o� ��4�!&��T5m� ��4Um[?��D���-&��T�n� ��4U��>B?B�?��D��/�&��v�P�s�֘`NSٴ)&�,��`NSٹA&��T�a ��A� �G����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �G����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����\Ə@��a ��A� ������\Ə@��a ��A� �H����Ə@��a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� ����� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H���� ��#�,a ��A� ������ ��#�,a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H���� ��#�,a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� ������ ��#�,a ��A� �H���� ��#�,a ��A� �ȿ��� ��#�,a ���� ��� A�@��Ə֏@��a ��A� �Ⱦ��� ��#�,a ��A� �H���� ��#�,a ��A� �Ƚ���Ə@��a ��A� �G����Ə@��a ���� �� A�@��Ə֏@��a ���� Ј� A�@��Ə֏@��a ��A� �Ȼ���Ə@��a ��A� �H����Ə@��a ��A� �Ⱥ���Ə@��a ��A� �H����Ə@��a ��A� �ȹ���Ə@��a ��A� �H����Ə@��a ��A� �ȸ���Ə@��a ���� ��� A�@��Ə֏@��a ��A� �ȯ���Ə@��a ��A� �H����Ə@��a ��A� �Ȯ���Ə@��a ��A� �H����Ə@��a ��A� �ȭ���Ə@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �H� B�A8��Ə֏0@�c��, a ��A� �H����Ə@��a ��A� �Ȫ���Ə@��a ��A� �H����Ə@��a ��A� �ȩ���Ə@��a ��A� �H����Ə@��a ��A� �Ȩ���Ə@��a ��A� �H����Ə@��a ��A� �ȟ���Ə@��a ���� ��� A�@��Ə֏@��a ���� �H� B�A8��Ə֏�@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ��A� �H����Ə@��a ��A� �Ȝ���Ə@��a ��A� �H����Ə@��a ��A� �ț���Ə@��a ��A� �H����Ə@��a ���� �H� B��@��Ə@H�Y?!<Sa ���� �Ț B��@��Ə@H�Y?!<Sa ��A� �ș���Ə@��a ��A� �H����Ə@��a ���� �� A�@Ə��4֏@��a ��A� �H����Ə@��a ��A� �ȏ���Ə@��a ���� ��� A�@Ə��4֏@��a ��A� �Ȏ���Ə@��a ��A� �H����Ə@��a ��A� �ȍ���Ə@��a ��A� �H����Ə@��a ��A� �Ȍ���Ə@��a ��A� �H����Ə@��a ��A� �ȋ���Ə@��a ������ �ɋ A�@��Ə֏@NS�?!�a � ����� �ɋB�@��Ə֏@NS�?!�a ���� �� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a "D,��� ������}��\`�� #�``&-v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&+v��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa ���� � � A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� �� A�@��Ə֏@��a ���� �I A�@��Ə֏@��a � ����� ��B�@��Ə֏@NS�?!�a ������ �� A�@��Ə֏@NS�?!�a ���� ܇~ A�@��Ə֏@��a ���� ܇~ A�@��Ə֏@��a "D,��� ������}ğ\`�� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa "D,��� ������}��\`@� #�``&�u��@�A��A8&�`��Է�#��T�&��T��#��T��Ə�@���`BS,�Oa ���� ��} A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� � } A�@��Ə֏@��a ���� ��� A�@��Ə֏@��a ���� ��z A�@��Ə֏@��a � ����� � {B�@��Ə֏@NS�?!�a ������ � { A�@��Ə֏@NS�?!�a ���� ��y A�@Ə0T�b�0 !I֏@��a ���� �Iy A�@Ə0T�b�0 !I֏@��a ��A#�`�&�5�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�5�Ə0T�b�0 !I֏04�a��, a ���� �Ix A�@Ə0T�b�0 !I֏@��a ���� ��o A�@Ə0T�b�0 !I֏@��a ���� �Io A�@Ə0T�b�0 !I֏@��a ���� ��n A�@Ə0T�b�0 !I֏@��a ���� �In A�@Ə0T�b�0 !I֏@��a ���� ��m A�@Ə0T�b�0 !I֏@��a ���� �Im A�@Ə0T�b�0 !I֏@��a ���� ��l A�@Ə0T�b�0 !I֏@��a ���� �Il A�@Ə0T�b�0 !I֏@��a ���� ��k A�@Ə0T�b�0 !I֏@��a ���� �Ik A�@Ə0T�b�0 !I֏@��a ���� ��j A�@Ə0T�b�0 !I֏@��a ���� �Ij A�@Ə0T�b�0 !I֏@��a ���� ��i A�@Ə0T�b�0 !I֏@��a ���� �Ii A�@Ə0T�b�0 !I֏@��a ���� ,�5A�@֏0T�b�0 !IƏp�a��, a ���� ,�5A�@֏0T�b�0 !IƏp�a��, a ���� ��_ A�@Ə0T�b�0 !I֏@��a ���� �I_ A�@Ə0T�b�0 !I֏@��a ���� � _ B�A8֏0T�b�0 !IƏp�a��, a �ȈA� �I^� ����@�@ �0�c���4��#��T��PNS��PNS�֏@��a �ȈA� ��]� ����@�@ �0�c���4��#��T��PNS��PNS�֏@��a ;J,@ �� �� �������a��pC�`0�0���� ��^%�1K� 7�2F0bp v�W���#�``'|�,�,�1P�D!��@�z(�p�$��A8F�`��Խ& ��`B!0OM[b�!8̀Ӧ�`N3�&�,7m�� �&�,wo� ��<vm� ��4��#��#��#� &�,a 9J,@ �� �� �����ЕQ�$� E��,�@#�` &u���p�Q��,Ca#�` &v�$�Lj�� ��]-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3v�@N3�`!0�n� �,�]`� 0��#��#�&�,�n� ��<un� ��4��[b�!8�`��@��a 9J,@ �� �� �������Q�$� E��,�@#�` &p���p�Q��,Ca#�` &q�$�Lj�� �I\-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3�@���a!8�`� ��<�&�,vm� ��<��Əf�`��ػ&�Թ%&�� vo� ��4��a 9J,@ �� �� �������Q�$� E��,�@#�` &k���p�Q��,Ca#�` &l�$�Lj�� � [-�,�1P�D!��@�z(�p�$��A86�`��Է�#�3v�@N3�`!0�n� �,�]`� 0��#��#�&�,�n� ��<un� ��4��[b�!8�`��@��a 5J,@� ���,C #�`"cE�$� ���,�@#�`"de� � F� ���A��2Kp��A��U2Kp TD!��@� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`">E�$� ���,�@#�`"?e� � F� ���A��2Kp��A��U2Kp TD!��@� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`�'9E�$� ���,�@#�`�':e� � F� ������2Kp�����T2Kp TD!��@�� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 5J,@� ���,C #�`�'4E�$� ���,�@#�`�'5e� � F� ������2Kp�����T2Kp TD!��@�� �1K� TP ��0�c�`� ��4��#�3f�`N3Զ&�� �m� �,Kn� ��<� &�,� &����@��a�!�R�a 7J,@ �� �� ������T1K� 7x� ������1K� 7�2F0bP �"S�,�1bP �"S�,�1P�D!��@�z(�p�$��A8��0�c�`� ��4��#�3v�`N3Զ!&�� �m� �,Kn� ��<�&�,� &���@��Xa�!�R�a 7J,@ �� �� ������T1K� 7x� ������1K� 7�2F0bP ��R�,�1bP ��R�,�1P�D!��@�z(�p�$��A8��0�c�`� ��4��#�3v�`N3Զ!&�� �m� �,Kn� ��<�&�,� &���@��Xa�!�R�a � �X�@��Ə@0�@X?!8Ma � �T�@��Ə@0�@X?!8Ma � �`�@��Ə@0�@X?!8Ma ���� � H A�@Ə0T�b�0 !I֏@��a ���� ��? A�@Ə0T�b�0 !I֏@��a ���� � ? A�@Ə0T�b�0 !I֏@��a ���� ��> A�@Ə0T�b�0 !I֏@��a ���� � > A�@Ə0T�b�0 !I֏@��a ���� ��= A�@Ə0T�b�0 !I֏@��a ���� � = A�@Ə0T�b�0 !I֏@��a ���� ��< A�@Ə0T�b�0 !I֏@��a ���� � < A�@Ə0T�b�0 !I֏@��a ���� ��; A�@Ə0T�b�0 !I֏@��a ���� � ; A�@Ə0T�b�0 !I֏@��a ���� ��: A�@Ə0T�b�0 !I֏@��a ���� � : A�@Ə0T�b�0 !I֏@��a ���� ��9 A�@Ə0T�b�0 !I֏@��a ���� � 9 A�@Ə0T�b�0 !I֏@��a ���� ��8 A�@Ə0T�b�0 !I֏@��a ���� � 8 A�@Ə0T�b�0 !I֏@��a ���� ��/ A�@Ə0T�b�0 !I֏@��a ���� � / A�@Ə0T�b�0 !I֏@��a ���� ��. A�@Ə0T�b�0 !I֏@��a ���� � . A�@Ə0T�b�0 !I֏@��a ���� ��- A�@Ə0T�b�0 !I֏@��a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ��A#�`�&�4�Ə0T�b�0 !I֏04�a��, a ���� � , A�@Ə0T�b�0 !I֏@��a ���� ��+ A�@Ə0T�b�0 !I֏@��a ���� � + A�@Ə0T�b�0 !I֏@��a ���� ��* A�@Ə0T�b�0 !I֏@��a ���� � * A�@Ə0T�b�0 !I֏@��a ���� ��) A�@Ə0T�b�0 !I֏@��a ���� � ) A�@Ə0T�b�0 !I֏@��a ���� ��( A�@Ə0T�b�0 !I֏@��a ���� � ( A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� ,94A�@֏0T�b�0 !IƏp�a��, a ���� ,74A�@֏0T�b�0 !IƏp�a��, a ���� ,54A�@֏0T�b�0 !IƏp�a��, a ���� ,34A�@֏0T�b�0 !IƏp�a��, a ���� �I B�A8֏0T�b�0 !IƏp�a��, a ���� �� B�A8֏0T�b�0 !IƏp�a��, a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� � A�@Ə0T�b�0 !I֏@��a ���� �� A�@Ə0T�b�0 !I֏@��a ���� �  A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a ���� � �A�@Ə0T�b�0 !I֏@��a ���� ���A�@Ə0T�b�0 !I֏@��a �ȈA� � ��Ə@NS�>�D�`��, a �ȈA� ȉ��Ə@NS�>�D�`��, a �ȈA� � �� ����@�@ �0�c���4��#��T�&��T��#OD ֏@��a �ȈA� ȉ�� ����@�@ �0�c���4��#��T�&��T��#OD ֏@��a ��A� ������0<Sa ��A� �J����0<Sa ��A� ������0<Sa ��A� �J����0<Sa ��A� ������0<Sa �b�d�@��<a �a�d�@��<a ���d�@��<a ���d�@��<a �b�p�@��pD� �a �a�p�@��pD� �a ���p�@��pD� �a ���p�@��pD� �a A, �\`d�`�n@�������`tdld{@�;�;#�`�*��A8��0<Sa A, d�\`��=�C8�<��<�C;�A=������}�l�#�`P ��A8��pD� �a ���� �G� B�A8֏`8E!��# )Ə@�Da ��A� �J��� a ���� � ��Ə0�d�2a ��A� �J���@0��a �pCPa0bp ��7�� Ap�A8Ə@<1�>��a A,@ � ������ ؊�B0��Ə@<1�>��a �pCPa0bp ��7C� Ap�A8Ə@<1�>��a A,@� ������ ؊�B0��Ə@<1�>��a A, 4�\W ��8�C:�C9�C8��:��8́���} #�` a A,@�& !P�\Î$����M���&@�@ �PX�06� 8� & ұX?�!EB 4��# Y`� Q��# )a A,@�& !P�\Î$����M���&@�@ �PX�0�PHT�#֏pH�P a� ��� &ұ���# �>��a A,@�& !P�܈A� � � �a� �A8 �PX�0&�0H�b�CD֏P �2��@0��X`� Qa A,@�& !P�܈A� � � �a� �A8 �PX�0�PHT�#&�PH��#Ə0T@d��@,`�H a A,@�& !P�\Î$����M���&@�@ �PX�06� 8� & ұ?�P��#�L��# )�0HTa A,@�& !P�\Î$����M���&@�@ �PX�0�PHT�#6�@8���`B!��?�P��#�L��# )a A,@�O6!P\Ď$����B$H0�� �PX�0F� 8� & ұ?�P��# )&�0HT`��4� H a A,@�O6!P\Ď$����B$H0�� �PX�0&�PHT�#F�@8���`B!��?�P��# )֏�,@C���a #A,@�& !P�\Î��� 2b� ��7J�0�#�`�+rd�PX�06� 8� & ұX?�!EB 4�&�,�m�CD�0HT`�H�&�,a A,@�& !P�܈A� ���# �`�+y��!�&��A� �J�� �PX�0f�`��Է & ұ?�P��#�L��# )�0HT`� �, a "A,@�& !P�\Î��� 2b� ��7 �0�#�`�+rd�PX�06� 8� & ұ�a�!�R�Ə0T@d��@,`�H�& a!�a #A,@�O6!P\Ď���M2b� ��7K$�hB�����M�A8�PX�0F� 8� & ұb�!�R�Ə0T@d� �D��@0��X?� a�b� �, a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0f�PHT�#֘P8���Ƙ`H��#�&(��D�D-Sm� �t,>b�H��#R$�@C�b�!Q��Ԇ�@8��aBHLDH�2?�Pa MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0֏pH�P a� �D>�#֘p8���>b� �t,>b��&0��D�D-S�#Ə0T@d�H�&ұ���a�HLDH�2��-& �H�#��`8���a FA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�PHT�#��`H��#�&(��D�D-Sm� �t,>b�H�)&�Hm� 1!Q�d�CD֏P �2a HA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�pHT�#>b� �t,>b��&0��D�D-S�#Ə0T@d��@,`�H�&ұ���a�HLDH�2��)& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�PHT�#֘P8���Ƙ`H��#�&(��D�D-Sm� �t,>b�H�-&�Hm� 1!Q�d� ����# Y?B1�a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�pHT�#>b� ����#Ƙ�H��#��XaHLDH�2�>b�CD֏P �2��@0��b��D>�#F���L>b� �t,>�#���HT�#��a JA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�PHT�#�P8���֘`H��#�&(��D�D-Sm� �t,>b�H��# �& )Ƙ`HT�#�%&N�#V���LƏ0T@a MA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�pHT�#>b� ����#֘�H��#���aHLDH�2�>b�CD��@0��X?� a�b� ����b�!����&,��D�D-��c"Q���>a MA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`@*O`d�PX�0V���L�&����>��b� ����Xc��D>�#��#R$�@C�b"Q���Hm� �t,>�#�&$��D�D-��# �a�!���a GA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0V���L�&����>��b� �D>�#�-& ұ����F���LƏ0T@d��@,`� �t,>�#a LA,@�5WP�����`tdl�@q�d ��F����7�P�����`t�@p�d��`@r�G��<�9#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`@*O`d�PX�0V���L�&����>��b� ����Xc��D>�#�-& ����Ƙ�H��#>baBHLDH�2?�P��#�L�&ұ���a MA,@�OPQsu��`n v@`@p�`�dl@r�{`�9��<��<�{sy��`n v@`�dl@q�ld {p�<�A��#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0f���L�&����>��b��4� H�%&N�#>b� �����Ƙ�HT�#>R[c"����m� 1!Q�d�CD��pH��#>a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0֏pH�P a� �D>�#֘p8���>b� �t,>b��&0��D�D-S�#Ə0T@d�H�!&N�#>b� �t,>�#F���L>b� �D>R�a PA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:�)(Q0�#�`�>N`d�PX�0���HT�#�����#R$�@C�aB"�����aBHLDH�2���b�D>�#>b�CD��@0���aB"Q�����XcB�D>r���c�"���>�#V���L���a HA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0f�pHT�#>b� �t,>b��&0��D�D-S�#Ə0T@d��@,`�H�&ұ���a�HLDH�2��)& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`���$����M� K0��0!P(܈A� �J�D �� 0b`` ��E�@�PX�0���HT�#����&$ұ�����&4��D�D-�����# Y?B1��>��b� �D>�#>b� �t,>b���Xa�HLDH�2�>�#a MA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0f�pHT�#>b� ����#Ƙ�H��#��XaHLDH�2�>b�CD֏P �2��@0��b��D>�#F���L>b� �t,>�#���HT�#��a PA,@��7�P�����`t�@p�d��`@r�G��<�;{su��`n v@`@p�`�dl@r�{`�;��<��<#�`�>�1�� B`��U��A� ��8�@0�hBӄ@�p4;b� �2:S)(Q0�#�`�>N`d�PX�0���HT�#����&$ұ�����&4��D�D-����!& N�#>�#Ə0T@d��@,`�H�&$�����5&$N�#����1&(ұ���#>b�  1!Q�T���a MA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0v�pHT�#>b� ����#֘�H��#���aHLDH�2�>b�CD��@0��X?� a�b� ����b�!����&,��D�D-��c"Q���>a PA,@�O�zsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�>2�� B`H��U��A� ���< �� `���U��A� � �P�"� 0b`` ��F�@�PX�0Ƙ�HT�#����!&$ұ�����&4��D�D-����%& N�#>�#Ə0T@d�H��# �& )v��HT�#>�#昐8���>�#֘�H��#����&8��D�D-S�#>a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n���� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n���� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,t� 8b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������pn0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2�6�������4MV�������4M���L��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������pnPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� �_�O�H#�d� ��4UMaB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������pn`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������pn`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�&���L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# ��`�!8MU��@NS�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L� &��T&���L��# �Y`�HLDH�2�F�`NSո&��T5o� 1!Q�d� �_�O�H#�d� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� �7�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�`�>�0�� Bpp0�p�lC �����L���L��# ��`�!8MU��@NS�`B���>�HD4aB���>�HD4a KA,t� �7�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L� &(��D�D-o� 1!Q˴a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,D� �7b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,� �7h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� �7b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,t� �7h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8��0<Sd���4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8��0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@��0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8��0<Sa 1A,�� 8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a KA,�� 8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a .A,t� 8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,4� !8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� )8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� 18h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� 98b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8��0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8��0<Sa .A,�� E8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a AA,�� Q8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa .A,�� ]8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� �7Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,t� �7W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6�@NSY`�HLDH�2�&���L�&(��D�D-�n� ��4U�[a�!8MU�����L��0<Sd� �_�O�H#�d� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,D� �7�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,� �7�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�6�������4M&���L�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� �7�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,t� �7�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 8�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� 8Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,�� 8W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,t� 8�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,4� !8�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2�6�������4MV�������4M���L��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� )8�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� 18�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# �Y`�HLDH�2�6�������4M&���L�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 98�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8��0<Sa A,��\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8��0<Sa 2A,�� E8�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� Q8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� ]8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� �7Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`�>�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,t� �7W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�` ?�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,D� �7�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`P?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,� �7�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� �7�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,t� �7�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�?�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 8�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�?�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8��0<Sd���4a A,��\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8��0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#�`B�@��0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8��0<Sa 5A,�� 8Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`B�0�� Bpp0�p�lC �����L���L��# �Y`!8Me� ��4UM�`B���>�HD4aB���>�HD4a OA,�� 8W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`0B�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!���L�&(��D�D-�n� 1!Q��a�!8MU㶏0<Sd� ��4U��?BHLDH�2�aB���>�HD4�`!8Me� �_�o�H#�d� ��4�m�bB���>�HD4bB���>�HD4a 2A,t� 8�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`PB�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,4� !8�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`pB�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� )8�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� 18�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� 98�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,d�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8��0<Sa A,��\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8��0<Sa 2A,�� E8�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a EA,�� Q8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�`0C�0�� B0�0� �0�p�lC@� !�6ĐA8���L��# ��`�HLDH�2����L� &4~!>�#�DD�&4~!��#�DD��#$��D�D-�&4~!~�#�DD�&4~!��#�DDa 2A,�� ]8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�``C�0�� B0�P�lC �����L���L��# �Y`B���>�HD4�`B���>�HD4a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #�`�C�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�C�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�CC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,�\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,4�\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#�` FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,T�\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`@F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�``FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#�`�C`8��0<Sd���4��#�Pa A,t�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8��0<Sd�E,a A,��\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8��0<Sd�E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8��0<Sd�E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#�`�F�!��0U�B~!~���d� ��4n� ��4��# ��?�T E����O\S��#�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�F�B B��@�0U�B~!����d� S,���>qM L6�PNS�F�PNS�&�@NSYa�!8MUӶ�0<Sd�E,a�S,���>qM L��0U�B~!~���a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�FC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`�F�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,4�\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �` G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,T�\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`@GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,t�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8��0<Sd�E,a A,��\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8��0<Sd�E,a ,A,t�\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�``GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�G�A B��@�0U�B~!����d��3EƏPT�B�0U�B~!>���d�S,���>qM L�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�GC! ��0<Sd�S,���>qM L��0U�B~!~���d�E,a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1�Ə ��#�c��t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1�Ə ��#�c��t �a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1�Ə ��#�c��t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1�Ə ��#�c��t �a ���� ��/A�@ƏPT�B��@0��a ���� ��/A�@��@0��?BQ Ea ���� �/A�@��@0��?BQ Ea ���� �/A�@��@0��?BQ Ea ���� �/A�@ƏPT�B��@0��a ���� �/A�@ƏPT�B��@0��a ��A� ��-#�`p�0���@0��X?!�b�E,a ��A� �I-#�`;�0���@0��X?!�b�E,a ���� �- �hB�&�İQ�C8֏@<1�>��b�E,a ���� �- �hB�&�İQ�C8ƏPT�B֏@<1�>��a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ���� �N, �hB�&�İQ�C8ƏPT�B֏@<1�>��a ���� �N, �hB�&�İQ�C8֏@<1�>��b�E,a ��A� �.#�`�;�@� 0� ��@�@֏@<1�>��b�E,a��, a ��A� ��-#�`�;�@� 0� ��@�@ƏPT�B֏@<1�>��b��, a A, $�\U�C8��;�;�C9�������A #�`+���@�� 4a ����� �O* B�A8֏0T�b�0 !IƏp�a��, a ���� ܇)A�@��@0��X?!�b�E,a ���� �)A�@��@0��X?!�b�E,a ���� ܇(A�@��@0��X?!�b�E,a ���� �(A�@��@0��X?!�b�E,a ���� ܇A�@��@0��X?!�b�E,a ���� �A�@��@0��?BQ EX?!�a ���� ܇A�@��@0��X?!�b�E,a ���� �A�@��@0��X?!�b�E,a ���� ܇A�@��@0��X?!�b�E,q y2"�^�4�uJ�`�4�L�b�48�O�d�5Xf[�f�5xv^�h�5��h�j�6��k�l�6�fo�n�7�vz�p�7�|�r�78��t�8Xg��v�8xw��x�8�ǘ�z�9����|�9�g��~�:�w����:`����:8p����;X�����;x�����;�`Ƀ��<�p̃��<�`σ��=�ڃ��>8�郔�>X�����?x�����@�0���@����A����B��.���C�?���D8�O���EX_���FxPn���G�p}���H�����I�@����J�`����KP����K8ʄ��MX�ބ��N��턺�N��N�����OH����O������O�����O�����O8���Ph� ���P� ���P�� ���P(@���Ph����Q�`���Q�����Q(����Qh���Q�����R�)���R((�*���Rh(,���R�(�-���R�(0/���R()�8���Sh)0:���S�)�;���S�)@=���S(*�>���Sh*@H���T�*�I���T�*�K���T(+ M���Th+�N���T�+ X���U�+�Y���U(,P[���Uh,�\���U�,p^���U�,�_���V(-�i���Vh-0k���V�-�l���V�-@n���V(.�o���Wh.Py���W�.�z���W�.P|���W(/0~���WH/����X�/P����X�/И���Y�/p����Y�/����Y8�����YH8�����Zh80����Z�8�����Z�80����[�8л���[9p����[89����\X9�ȅ��\�9�ʅ��\�9�̅��\�9�΅��\8:�؅��]x:�څ��]�:p܅��]�:Pޅ��]8;0腵�^x;ꅹ�^�;셽�^�;���^8<����_x<�����_=P ���`�=����aX>�(���b�>p/���c�?�>���c�?H���d�?�I���d(H�K���dhH�M���d�H`O���e�H@Y���e(I [���ehI]���e�I�^���e�I�h���f(J�j���fhJ�l���f�J�n���f�J�x���g�J�z���g(K�|���ghK`~���g�K@����h�K ����h(L����hhL�����h�L�����i�L�����i(M�����ihM`����i�M@����j�M ����j(N����jhN����j�N ����k�N@����k(O@����khO ����k�O����k�O�Ȇ��l(X�ʆ��lhX�̆��l�X�Ά��l�X`؆��m(Y@چ��mhY ܆��m�Yކ��m�Y�߆��n(Z�醤�nhZ�놨�n�Z�n�Z`�o([�����oH[�����oh[����o�[@����o�[�����o�[����p\P ���pH\� ���px\� ���p�\���q�\����q�\`���r]�)���r(]p-���rh]�9���s�]>���t�]M���u�]�^���v�]�o���w^�����x(^p����zH^ଇ��{h^�����|�^�؇��}�^0���~�^@������^ ��̀_�����(_�����H_@����h_@-�����_p<�����_�K����_`X�����_�[��օh�h��ֆ(h`x��ɇHh�����hh�������h ���҉�hP���Ŋ�h������hp�����i����(i0�����Hi0�����hi`������i�������iP���Џ�i�������i� ����jP����(j�*���Hj�9����hj=�����j@L�����j�X�����j`\����j�_����k k���(k {���HkP���՘hk����ș�k@������k�������kp������k@�����lp�����(l�����Hl�����hl0������l����ٟ�lP������l� ��Ơ�l����m����(m@-����Hmp<����hm0I�����m�L����m`Y����m0i��֦�m`x��ɧn�����(n����ߨHn ���ҩhn������n���Ϊ�n�������np���ޫ�n�����o����ޭ(oP���ٮHo������ho@���ү�o���ڰ�o���ձ�o�(��в�o@8����x<����(x�K���Hx�X����hx�\����x�h�����x@l�����x�|�����xp�����y �����(y`�����Hy����hy`������y������y`������y������y������z������(z� ����Hz�����hz������z������z`.�����z=�����z�K����{�X����({�\����H{�i����h{y�����{������{p������{p������{ �����|�����(|�����H| �����h| ������|�������|P������|������|������}������(} ����H}P����h}+�����}�9�����}�=�����}`L�����}@Y����~P]����(~`i����H~`m����h~�|�����~�������~@������~0������~0�����P�����(������H@�����h����������������������������������� ����(������H� (����h��.�������=������pJ����ȈpN����舐[������j����(��y����H�0�����h�0���������������П����ȉ�������Ю����(�p�����H������x��������������@������������(������H���������������ȋ`������ �����H�������] ���<threadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_89_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64llvm.nvvm.associate.access.property.p0i8.p0i8llvm.nvvm.memcpy.async.p3i8.p1i8__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relumax__vimax_s16x2_relu__vimin_s32_relumin__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32_Z3maxjj__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32_Z3minjj__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfdumin_Z3minij_Z3minji_Z3minllllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindfumax_Z3maxij_Z3maxji_Z3maxllllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z16__isGridConstantPKvllvm.nvvm.isspacep.grid_const_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z31__cvta_generic_to_grid_constantPKv_Z31__cvta_grid_constant_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj_Z16__match_any_syncjjllvm.nvvm.match.any.sync.i32_Z16__match_any_syncji_Z16__match_any_syncjmllvm.nvvm.match.any.sync.i64_Z16__match_any_syncjl_Z16__match_any_syncjy_Z16__match_any_syncjx_Z16__match_any_syncjf__float_as_uint_Z16__match_any_syncjd__double_as_longlong_Z16__match_all_syncjjPillvm.nvvm.match.all.sync.i32_Z16__match_all_syncjiPi_Z16__match_all_syncjmPillvm.nvvm.match.all.sync.i64_Z16__match_all_syncjlPi_Z16__match_all_syncjyPi_Z16__match_all_syncjxPi_Z16__match_all_syncjfPi_Z16__match_all_syncjdPi_Z11__nanosleepj_Z9atomicCASPttt__usAtomicCAS_Z17__reduce_add_syncjj__reduce_add_sync_unsigned_impl_Z17__reduce_min_syncjj__reduce_min_sync_unsigned_impl_Z17__reduce_max_syncjj__reduce_max_sync_unsigned_impl_Z17__reduce_add_syncji__reduce_add_sync_signed_impl_Z17__reduce_min_syncji__reduce_min_sync_signed_impl_Z17__reduce_max_syncji__reduce_max_sync_signed_impl_Z17__reduce_and_syncjj__reduce_and_sync_unsigned_impl_Z16__reduce_or_syncjj__reduce_or_sync_unsigned_impl_Z17__reduce_xor_syncjj__reduce_xor_sync_unsigned_impl7.0.1nvptx64-nvidia-gpulibsmoduleOutputBC��5b 0$IY����~-D2! G| !�#�A�I29�� %�b�(EB� BD28K 2��H� CF��2BI�%�PAQ����QFQl� �����ap{��vp�ppwxzzH�wp�y�z��pp�y�vw��r `C����?mH�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9�!�6�,@�� ����� ��:���� ��ށ���a~��!�a�������@�l X6�,�$� �b��X�@0 �f� �3b��x�@@ �� e �����H5��=�C;�A8��;�=�=��;��<�=�C8��<�;��;�C9��� ������5������ �����!�!�����A����!܁ʁ� c@�����H�;؃=����;��;�C8�C:��;��/Ѓ<��;�<�C8�=�9� �`a�����HI�`� �A&�1ad�$�@�0�2af$K3�ƙP��<�@ah�DɄ��H�iB@M�h�T�`� �"�gB`M*�� �2"� d�%��%ㄡ�L�� �DM��#M%L>�4Ӎ`!n���&@� � � "�( "���4E�0��|�M�O@d�>�,5?�AL�@HB�<�4 D@�(�P�( %�$�#@��"TYp�4E�0��+M0�4��eP4�6(PISD �ϹDE4�/Mc}P2 �@(#@$�2  @(H���2i�(a�j>��i���� U`,P@P e�� �"P�@�� �@@dCI��� 0�2 ���&_�@�"#H�s�)����H `�U�Q�� ���$ĐN"*0�.���&_���&���`�&M%L�@ �I0ƒ�] D���x�az� (���� �Q *�� h�rP�`@TD)�2�#J�`%Q ��%�P�P������(T0�d@Q�� 2�)�P�T�@�����#JqE�mQ�+*��-��2TP��� 5 "PA1� 1��8F�"J�|��� Ȍk�)��ɧ��jPP4(�4����&_8��F�a ( 6����&� ��@ep� �c�)��� ��@" (���F�"J�|J8��FPP:(����i�(a��pDP@�� (����i�(a�)�"P@�Ѓ (����#�����&_:�h�Q�G���8G�"J�|J:�h�Q�G��F�"J�|�p��FB}���>��BΑ��&��'�l$��G�B�i�(a�É� }��G!飏>h�s�)��ɧ�É� }��G!飏>ȑk�)��ɗ'�pD��G}��>����i�(a�)�p� GD}��G)&飏>� Jn���&i���c�)��ɧ�f�Q@2�4�E�"J�|��l$@8��i�(a�)��l$@>�i�(a�f��B�F)D�r�4E�0�H3�(�)��1�Q��SH3�(�*��1�Q��/Nc�(0��@�\#M%L>�8�Q���"�b�r�4E�0���6 0� �`�r�4E�0���4�� (�-@�#M%L��4ƍ 0��`���5�Q��S��7 0��B�b�P/�HSD ��8��#� 0��`�0�HSD �O-Nc��0� (�0`�4� �5�Q���L5 �)�1��1�HSD �_,0�H(��2$SL1��5�Q���L7�)��B0SL1�P3�HSD �_,0�(��b�)�3�SL1�A�Q��/Nc,Nc�(0��@�\$M%L>�8��8�Q���"TcYs�4E�0�����6 0� �`es�4E�0���4��4�� (�6@�$M%L��4��4ƍ 0��`���E�Q��S����7 0��B�c��8ISD ��8��8��#� 0��`�P9ISD �O-Nc,Nc��0� (�9`����9�Q��,D�u���:��9�Q��,��u�)�;�C�#M%L��P�B�hPGu �:�C�#M%L��P�B��PGu�)=ꨣ�:TO���O!� h�RT@��b�"�T ���PL1TP�Q�*C1�C ���b��ʠ�:PCTL�)�!�� ��IT�b�1�(*D1��YT�!� QL1�C�bz�8*C1C�Au�!�ʠ�:�HeP�u��2`�dRPB� �<T �T0�X*� `�T ( ��$S)�QGu � ��:�C6Bu��p*�@:��u ��`�:�S�1��@B�A �ʠN1�Q�N�AJJ�P@KA� ��"P=U�+���p�TF@�BTZ�U���*FU�V�(�b��*B1�W�0��*�:�$V h��*�Y�G�@�Ң5���Z��Q�;ܢ���"�E���.���Ex�)E8E/ڋ�)6}�_�F��#=���`DR�C ��h�"L�)F��ƨ1R��<F��6E�F2���<D�A��2J��dF��3Ex�3��)�;�he��H�2\QDZ�@�2� W(�V�+�Z�T+�n�A��ኸ!��p]�le��.NH�2\��)D[�� �� W��V�+Ӄt+��B����&!��pc�pe��1UH�2\!�6D\�x�2� W �!W�+2K��+��=C̕���!��te�bH�2�:D]!Ⱥ2T�]!�H�2T��]!�ȻB�: x���>� ��PAye��ȼ"h�W�H�\A�!�̒!��� g�|F�2�D��2�t�� E "PE�3��+�@�a>u�"̷ h�"�h�>�(q��裏>�(��tтE��.j��E��a_$a��(,����E8�0° &Fa>ƈ�"�yX�%#�PL1E13��SL1E(�32��S?��pEЊ��b-��q�[�b!����>(�b\AW}���X�+���W�@7⊾ 0�r,���X�+� q�a}�A?���裏>(�B\�АŸ�1*�WHf�td!�Ȭ�b(�b\�Y1�S -Y�+>SGj,w�x�|�:hw��t �t�68x�vHq��� !CF��! �0�@-JM5퀀$8r2�`� ����0;�� � �e�p�d0 � �`�`��q�c0�($r�8�1�`��`� @���\0}  ��L.�>��'����v@~� �я�@;������` �|�q�c0�(�r�8@2�`$v�`! @�ڿ\0�  ��b� �1��@;�� r�8H2�`d�A.GI�~5��0�` ���`' @�������v@��r�d0���Y@�  ��x@ �ѓ�@;�qd9|2�`T��+GJ�FPp�P�` �P, �`+ @��I���%��v@�)��q�d0�hOW0�  ���� ���@;��\�8`2�`TƂ+GL��Yp��` �Ph �`3 @�zq���&��v@�.��q�d0�h�W0�  ��� �q��@;�S\�8p2�`�T��0D��s�"���A@ ��s��!R��@��G�L `���f0D�����"��A@ ��u� �H1;|C$����!��Y0D��  �H�;xd@����� �"��C�U<4 `�����C$�,5 `�$���@ ��zp���!�j0D���� �H�=hv@�IŇ �"����C�>�P `�D� @ ��}�F��!R��(0D���* �Hv?p�@�I����"����C�$6��!s� @ �f���U `���� @ �֒�^��!Rj[,0D"O�� �H!JX�@��F l�"�)a�C�:%\ `���D� @ �d��z��!��m� @ �f��q�`�4��� @ �d�x��!R�P:p0D�_b�H!LD�@�I��HP"�1!� C�:&$|�`�t�Ĵ4 �t����!�:�Hp0D�g"* �H,MH(@�ɧ i%P"�51� C��&���`�d�E4 �ԛhn��!�}�N0D2q�� �H4N@`@��̉g,"�9�C$R' � `�D넴 �̝x���!R�P\0D*y� �H5ODw@���H/"�=!�C��'$� `����4 �ܟ�N��!���j0Dz�Bj �HaXL�@���i6"�bA�C�],�� `��E� �H��~��!RN�x0Dz��*�H�Y\�@��7��="�g!�C��,&� `�$�U �̴����!���}0DB���H�ZH�@�I] &?"�k��C$�-�� `���� �|�`���!��N~0D�ۂ��H�[8�@�Iv�(?"�o1�C$�-�� `�t�Ŕ �t�p���!P~0D�����H�\@�@�ɖ '?"�s�C$z.�� `�$�� �d�����!RYU~0D��b��H�]T�@�I� f?"�w��C$�.�� `�d�� �d�p���!�N0Dr����H|^8�@�IՋ�?"�z��C�_/� `���E"@ ��XB��!��J�0DB����H4_$�@��� &D"�}��C��/� `���E"@ �L�H���!���0D��" �H�_!@����$D"���C$�/�� `���@ �R�HB��!� G�0D�A# �Hbh !@�I �cD"šQ�C$;4� `�ԇ�Q" �H�(J��!R*lj0D�E�8 �H�h %@�� �D"��Q�C�t4� `�$��Q"@ ���@J��!HE�0D*II�H-i)@�)& dE"夡�C��4� `���F�"@ ���8J��!�^D�0D�K#)�H�i%@��5�$E"ݦQ�C$�4 `�d�F#@ ���8J��!�|D�0D�Oc��H!j2@��D eE"Ũa�C�5� `���FQ"@ ���8J��!ҚD�0DzS)�Hwj%@��O �D"��Q�C�T5� `��Q"@ �h�@J��!�E�0D W)�H�j%@��] %E"�a�C$5� `�T�Q"@ �R�@J��!R�E�0D�Y)�H>k%@�il��?"��a�C$�5� `�ԷƱ"@ �H�`h��!��0D�])�H�k%@��|��D"��a�C$�5� `�ĿFQ"@ �B�HJ��!� F�0D�a#)�H9l%@�重�D"��a�C$76� `�tdžQ"@ ���PR��!�)F�0Dje)�H�l%@�I���D"��A�C�r6� `���FQ"@ ���PJ��!?G�0DiC)�H-m%@����&E"����C$�6� `��׆�"@ �D�pR��!lJ�0D�m���H�m6@�ɽ��D"ݷa�C��6 `�t�Ɓ#@ �\�Xp��!R��0D s#)�Hjn%@� � �D"�Q�C�>7 `�dꆁ#@ �X�Pp��!���0D�u�)�H�n(%@��ލ$E"��Q�C$�7 `����#@ �^�HR��!�E�0D�y#I�Hfo)@�i퍤D"ѽa�C$�7� `�4��Q"@ �R�HJ��!��F�0D�}#)�H�o%@�����D"��a�C$�7  `�d�G�#@ �^�px��!R�0D"��(�Hjx %@�� �D"��1�C$;< `�ԇ��#@ �@�0J��!�)C�0DJ��(�H�x %@�I��G"��1�C$^<� `�䎇S"@ ���J��!�KN�0D��C)�Hfy%@��-��D"�偔C$�<� `����R"@ �t�XJ��!RyH�0Dj�#)�H�y%@��?�L"�聈 C�=2 `��r ��� ���!���}0D����Hzz f@�IT��>�"��Q� C$U=3 `�$��a&@ �p�@���!���0DB�1�H�z f@� _�L"�쁘 C$�=� `��"& �p� ���!��0D"��Hl{ �@��n�>�"���C$�=�� `���b& �`����!����0D��1�H�{f@��|�L"� C$�=3 `��b& �L�@���!� ��0D��I�H>| b@�ɌBL�"�� C$9>0 `���ǃ& �R�`���!R-�0D"�A �H�|<h@�韏M"��� C��>4 `���G�& ���h���!�j��0D���Q �H�}<h@��M�"��� C$?4 `���ǃ& ���`���!R��0DB��A �H�~<h@�i�M�"��� C$?4 `���ǃ& �r�`���!R��0D���A �H�8h@����M�"��� C��?4 `�$�ǃ& �Ba���!R "�0D�A�A �Hh�@ C$<D���!)"�@��f `����& ��q���!R?"�0DrI�a �H=�@n@��-�M�"�%r� C$�D 9 `�t��'8 �\)���!�l"�0DZO� �H� v@�i?�N�"�(�� C�E0< `�4�H"&@ ��I���!R�"��0D�S$ �H��`x@��W�DL�"�+�� C�xE1 `���H"&@ �F����!��"��0D"[$ �Hm�$b@��n�DL�"�-�� C��E� `�ľ�"@ ��yB��!� #O�0D�a���Hx�@!@� �(D�"�2�C$tF� `����' �hq���!�X#��0D�k�� �H~�8~@����O"�7�� C��F? `�����'@ �ny���!��#�0Du� �H��8�@���GT�"�;� C$}G<P `����#*@ ��yD��!��#��0D*}� �H��x�@�I���T"�`�@�)�GM"�b¨ C$VL6 `�����&@ ��1y���!>&�0D2��a�H5�4l@�I,�M"�e° C$�L6 `���I�&@ �p3y���!�y&�0D���a�H$�8l@�IF��M"�i� C�7M6 `�ԧI�&@ �T5y���!R�&�0D:��I�H��0�@�Id M"�l"� C$�M.4 `��Ʉ&@ �h7����!��&�0D���B�H3�Lh@�Ɍ�M"�qB� C$XN.6 `�t�I�&@ ��9����!�L'��0D"��R�H{�Lj@�ɵ+U"�w"� C$�N�T `���ɔ*@ ��<����!��'�0Dj��B�H�\h@�Iߓ M"�|2� C$�O04 `��� �&@ �`?����!��'�0D��C�H2�Ph@�� ��M"��R� C$YT06 `�����&@ �@R����!�M*��0DRKS�H��Pj@��6 M"��"� C$�T.4 `�T�ʄ&@ ��T����!��*�0D�U�b�H�Tl@��_ M"Ѭ"� C$�U.4 `�Էʄ&@ �`W����!��*�0D�_�b�H1�Tl@�Ɍ M"�"� C$WV.4 `�T�ʄ&@ ��Y����!�K+�0Dk�b�Hy�Tl@�ɵ M"��"� C$�V.4 `���ʄ&@ ��\����!��+�0DRu�b�H�Tl@��� M"��"� C$�W.4 `�T�ʄ&@ �P_����!��+�0D��B�H'�Lh@�I�k `����0D�["��2-@ ��q��H%�H C��\���!�[.�@�I4��M"��B� C��\07 `�T�K�&@ �tt����!�.�0D��B�H��Lh@��]�M"��2� C��].6 `�Ķ �&@ �@w����!��.�0DB��B�H��Lh@�I��M"��B� C$>^.6 `�4�K�&@ ��y����!R?/�0Dr��B�Hd�Hh@�ɮ��M"��"� C��^,6 `�4���&@ �L|����!Ҏ/�0Db��B�H��Hh@��֗�M"��2� C$~_,6 `�$� �&@ ��~����!�/�0Dr��B�H�Lh@� ��M"� 3� C�0d.6 `��� �&@ �X�����!�82�0D�G�B�H+�Lh@��'�M"�%C� C$�d.6 `���L�&@ ��QV�!�2��0D2Q�Z �H<�Lr@��M Np"�*� C$Ze&8�`�t� $'@ ����!�2Y��0D [&��Hr�d���iu�)"�.�� C$�e�8 `�T� �*@< �z�����!3]��0D�e�{�H��|�@�饙0x�Hp�x�@�ɵ��"�7��C$g�Z `�t� W  �F�1�W `��� �C��g�� `���L�@@ �ʞ�b��!�3V�0Dr}F��H��h�@�I�'V"�`s� C$4l�� `����d+@H �V�����!�.6�}0DZ�f��H��DC��l&\ `�$�ͥ+@H ��p��!k6�0D����H��`�@� F W"�is� C�?m.\ `�d���+ �ҵq���!ҽ6��0D*����H;�`�@�in��W"�n3� C��m&p `���. �L�����!7�0D���H��\�@�i�� \"�s3� C��n,q `�4� &. �������!�l7�0D*�f�H��X�@��� \"�y�� C$>o0p `�D��. �ֽ����!��7 �0Dj�f!�H8�,���i��\�"�}�� C��o��!�7 �0Dz�b�H��@�@����H^"��� C�t| `��γ/ ��С���!�(:��@0DrEgI(�H��,C$rtr `��N2 �@҉H��!RL:��0DKGR�Hu�@-@��4f"զc� C��t�� `�d��r3 �Bԉt��!��:Q�0DSG�Hu�0�@�)T�\"��Ø C�\us``�T��.L ���a �H��0�@�)e��]"�� C��u$y `�Է�T/ �^ׁ���!��:о0Dz_���H$�0�� �&]�"��@ ���a���!;R�0D2eG"�H��L'@�i��Ie"��� C��v"� `���53 ���aj��!�h;��0DzmG��H��H=@�i�� l"��Ð C$wr `���c.L ���a�� �!��;L�00Du��"��Ð C$]w"v `���N�. ��ݑ���!��;R�0D{��Hp�@�@� ���_"վØ C��w�t�`���0D��!�H%�H!@���d"��3� C$>|&� `��O�2 ���`��!R<>��0DBɇ��H4�07@� ,Ig"��#� C$�|&� `�t�C. ���a���!�{>��00D�χ1&�H'�0���iF `���C. ������!�>ѻ0Dj�G��H��H�@�)^_"��� C��}* `�d�c.P ���a� �!��> @�Iu�\"��#� C$�}$� `����t2 �Z��T��!?Q�0D��'��H��\3@�)��f"���� C�x~$� `�4ҏ�3 �j�����!Z? �0D��!�H��0������\�"��ä C$�~��!|? �0D��'b�H-�D�@���I^"��#� C$Q | `�$��/ �������!ҽ?��@0D��I(�H/�0C��r `�t��2 ����H��!��?��0D��gR�H��D-@�I�f"� t� C$5��� `�d�s3 �D�t��!-BR�0D2Gh�H�1�@��$!�\"�$Ę C���s``����.L ��b �H� 1�@��5��]"�&� C���$y `���T/ �f����!ҘBо0D�S���H� 1���V!&]�"�+�@ ��b���!�BR�0DRYH"�H< M'@��m�Ie"�.� C�م"� `�D��53 ��bj��!� C��0D�aH��He I=@�鎡 l"�2Ĉ C$[�� `�$�C6T ��b�� �!�>C��P0D2i�A�H2 1b@�ɧ!Im"�5$� C$ц&� `�T��7 ������!R~C�0DRqȲ�H`1d����!�l�"�9Ġ C$R�� `��Є7 ������!��C�0DRy���H>I�@� �!It"�>��C$݇� `�d��: ���T��!R F�0D���r�Hl1b@� #Fl"�bĐ C$X���`�ċc6T ��1b���!=F��0D�HR�H2Il@��,��m"�e4� C$Ռ"� `���QD7 ��3����!��F �`0Drш1,�H:1h@��L#Fl"�i4� C�R�&� `����7 ��5����!�F�0D��H�Hda�@��o#�t"�nĠC$ڍ&� `�t���: ��7�\��!� G��0D���Hf1d@�I�#�l�"�qĘ C$U�� `�d�#6 ��9����!=G�0D2�hr�H9Mp@����Hn"�u� C$׎,� `�D�C6X ��;b� �!G �0DB��H4Mx@��̣Io"�yD� C$W�(� `�$�: ��=�D��!��G�0D���1�Hj1�@���Iu"�~4�C$ޏ(� `��#6 ��?b���! J �P0D�A�!*�H`(1f@�� %m"�Ĉ C$R�$� `�d���6 ��Q����!�>J�0DrI)��H?)Et@� .%�n"��Đ C$ٔ��`���6 ��Sb���!�}J�0DJQi��H<*Q|@� N%�o"��$�C$[�$� `���F: �@VbL��!�J �0D�YiR�Hk+M�@��o%�u"ɮd�C$���� `����� �jX����!K�}0De�� $�H�,Y�@���% v"����C$��,� `��ג; �d[�`��!zK��0D�o�� �H-.Y�@�i�%�O�"ݹ��C�W�8�@`���f; �F^�t��!��K� 0D�{ ��H�/a�@���%Lw"����C��0� `��+ ��p��� �!�+N��p0D����H�8}�@�I&��>"����C$Ԝ�� `����w@ ��s����!R�N�}0D����H�:u�@��\��>"����C$���� `���w@ �`w����!��N�}0D"���H;<}�@�I�'*"���C$s� U�x"���@� �'�|�x"��$q@���'-�x"��d�@���'N `�꓇>@H �|}����!һO�� 0Dr��S�Hl?}�@�i��H}"���I ���$�H5Hu�@�I�,V��"�"U�@� ��}"�$��C����X@`�T���> �V�j���!nR��0D�Ojr �H(Jy�@��L)�}�"�)e�C$X�� `�ԫT? �������!R�R�0DZ[�� $6���$2�,L�� &G�C`� � �@��! �@!Ȁ(���"(��(�*��(@�D(@�)@� (@@�$(@@���(�R*�B+��+��+ƀ� (ˀ (րr (ـ� �Fh�B�:b`G 9�t3���f=�C8�ÌB�yxs�q ���3 B��Ρf0=�C8���=�C=�=�x�tp{yH�ppzpvx�p ����0n0���P3��!�!�af0�;��;�C9�<��<�;��v`{h7h�rh7��p��p`v(v�vx�w��_�q�r��y��,�������0bȡ�̡��a�!ā�a֐C9�C9�C9�C9��8�C8�;��/��<��;�;�� �i�pX�rp�thx`�t�t���S��P��@� �P3 (���A�!܁�����fQ8�C:��;�P$v`{h7`�wxx�QL���P3j�a�!��~��!�aT��8��;�C=�C9��<�C;��;�Ì� �y��w�tz(r��\����P�0#��A�����y LbH C� 9$��@���h"P2�!GȐQ �align�y0��c0��c0���0��0���0��c0���0�`�0���0� �0��c0�P�0���0��0���0��c0���0�P�0���0��0�@�0���0�!1��$1��%1�`(1��)1�+1�`-1� "v1��c0� "w1� "|1� "}1� "�1� "�1� "�1� "�1��.�5�/�5�0/�5�`/�5��/�5��/�5��/�5� 2�5�P2 6��2!6��2"6��2#6�3$6�@3%6��3(6��3)6�6*6��.26�/36�0/46�`/56��/66��/76��/86� 2=6�P2>6��2?6��2`6��2a6�3b6�@3c6��3f6��3g6�6h6��.p6�/q6�0/r6�`/s6��/t6��/u6��/v6� 2{6�P2|6��2}6��2~6��26�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3�6��3�6�6�6��.�6�/�6�0/�6�`/�6��/�6��/�6��/�6� 2�6�P2�6��2�6��2�6��2�6�3�6�@3�6��3 7��3!7�6"7��.*7�/+7�0/,7�`/-7��/.7��//7��/07� 257�P267��277��287��297�3:7�@3;7��3>7��3?7�6`7��6h7��c0��6i7��c0��6j7�7k7��c0�07l7�P7m7��c0�p7n7��7s7��7t7��7u7��7v7�:w7�0:x7�P:y7��:|7��:}7��:~7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6�7��6�7��6�7�7�7�07�7�P7�7�p7�7��7�7��7�7��7�7��7�7�:�7�0:�7�P:�7��:�7��:�7��:�7��6"� ��#oC��Bܔ`0�07&� �� #w���B޴`0��7.� �� #��B��`0�0:2� �� #�c��B��`0��:8� ��+#������c0��>�� ��8#�3�����c0�?�� ď9#�s��B��c0�?�� ď:3�0�@� C3 Fp�0 �1Ð� �3 K��043��� �03 P�0HA4�0� D3 U�0XA4�p� D3 Y�0hA4ð� D3 ]�0xA4��`0��0�A3 c�� `0�P�0�A3 g�� � C� �� �� � C� �� �� � C� �� �� � C� �� �� � C� �� �� � C� �� �� (� C(� �(� �(� )� C)� �)� �)� *� C*� �*� �*� +� C+� �+� �+� ,� C,� �,� �,� -� C-� �-� �-� .� C.� �.� �.� /� C/� �/� �/� 8� C8� �8� �8� 9� C9� �9� �9� :� C:� �:� �:� ;� C;� �;� �;� <� C<� �<� �<� =� C=� �=� �=� >� C>� �>� �>� ?� C?� �?� �?� H� CH� �H� �H� I� CI� �I� �I� J� CJ� �J� �J� K� CK� �K/1�AL�0�D3 3�� CM41�`�M�0�Dp3 9�� �N11ðAL�0�D@3 =�� �O71���M�0�E@3 a�� �X71�0�K�0�E3 e�� �Y41�pM�0�Ep3 i�� �Z/1ðAL�0�E3 m�� �[41���M�0�Ep3 q�� �\71�0�M�0�E�3 u�� �]11�pM�0�E@3 y�� �^71ð�K�0�E3 }�� �_41��M�0�Fp3 ��� �h41�0�M�0�Fp3 ��� �i11�pAL�0�F@3 ��� �j71ð�M�0�F�3 ��� �k11��M�0�F@3 ��� �l71�0M�0�Fp3 ��� �m� �mL@3�0M�P�F�41C��� �nL@3�0M�P�F71C�A�� �oQp3�D�M�P�G71C!A��� �h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�h�n�n�n�n�n�n�n�n�n�n�n�n�n�n�n������������������������������������������������������������������������������������������������������������������������������������������������������������职&(7;��49�2���7�Q�H��ή�%���.�.��mn���(�8�H�X�h�x���������������� )9IYiy��������0 12)394I5Y6i7y8�9�:�;�<�=�>�?�P QR)S9TIUYViWyX�Y�Z�[�\�]�^�_�p qr)s9tIuYviwyx�y�z�{�|�}�~��� ��)�9�I�Y�i�y����������������� ��)�9�I�Y�i�y����������� r(�w�zXp�C=��8�C9�Â�ơ �A���!�!����<��;�;�=��<�C8��a A,T� � �d�\�������4Ma A,�� � �d�\�������4Ma A,�� � ��6C�A8 �\��`&�������4M�������4Ma A,�� � ��6C�A8 �\��`&�������4M�������4Ma A,� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,D� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,t� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,�� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,�� � �d�\�������4Ma A,� � �d�\�������4Ma A,D� � ��6C�A8 �\��`�������4M&�������4Ma A,t� � ��6C�A8 �\��`�������4M&�������4Ma A,�� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,�� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,4� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,d� � �d�\�������4Ma A,�� � �d�\�������4Ma A,�� � ��6C�A8 �\��`�������4M&�������4Ma A,�� � ��6C�A8 �\��`�������4M&�������4Ma A,$� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,t� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,�� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,�� � �d�\�������4Ma A,� � �d�\�������4Ma A,4� � ��6C�A8 �\��`�������4M&�������4Ma A,d� � ��6C�A8 �\��`�������4M&�������4Ma A,�� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,�� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,�� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,$� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,d� � �d�\�������4Ma A,�� � ��6C�A8 �\��`�������4M&�������4Ma A,�� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,�� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,$� � �d�\�������4Ma A,T� � �d�\�������4Ma A,�� � ��6C�A8 �\��`�������4M&�������4Ma A,�� � ��6C�A8 �\��`�������4M&�������4Ma A,�� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,D� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,t� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,�� � �d�\�������4Ma A,�� � ��6C�A8 �\��`�������4M&�������4Ma A,� � �6D0�B�@ �\��`�d6�������4M&�������4MF�������4Ma A,D� � A�6E0��lCP �6�������4MV�������4M�X�\��`�df�������4MF�������4Ma A,��\ch���n0s n ���dldld {�F���#�`p� d���a A,��\ep���n0q`� n ���dldld {�F���#�`p� d���a A,��\ch����n0s n ���dldld {�F���#�`p� d���a A,��\ep����n0q`� n ���dldld {�F���#�`p� d���a (A,��\���>��<��9������C�(I;�>��<́�=����������C8��������C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I;�>��<ā���=����������C8���C�>����C����A?( ��������#�`�1�����a (A,��\���>��<��9������C�(I;�>�A=́�=����������C8��������C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I;�>�A=ā���=����������C8���C�>����C����A?( ��������#�`�1�����a (A,��\���>��<��9������C�(I;��;��<́�=����������C:��������C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I;��;��<ā���=����������C:���C�>����C����A?( ��������#�`�1�����a (A,��\���>��<��9������C�(I;��;�A=́�=����������C:��������C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I;��;�A=ā���=����������C:���C�>����C����A?( ��������#�`�1�����a ,A,��\���>��<��9������C�(I;�>��<́��<�;��C��A����(I;�>��<́��<�;����C����A?( ��������#�`�1�����a -A, ��\���>��<��9������C�(I;�>��<ā����<�;��C��A����(I;�>��<ā����<�;����C����A?( ��������#�`�1�����a ,A,��\���>��<��9������C�(I;��;��<́��<�;��C��A����(I;��;��<́��<�;����C����A?( ��������#�`�1�����a -A, ��\���>��<��9������C�(I;��;��<ā����<�;��C��A����(I;��;��<ā����<�;����C����A?( ��������#�`�1�����a (A,��\���>��<��9������C�(I8�9��<́�=����������C8��������C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I8�9��<ā���=����������C8���C�>����C����A?( ��������#�`�1�����a (A,��\���>��<��9������C�(I8�9�A=́�=����������C8��������C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I8�9�A=ā���=����������C8���C�>����C����A?( ��������#�`�1�����a (A,��\���>��<��9������C�(I8�9��<́�=����������C:��������C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I8�9��<ā���=����������C:���C�>����C����A?( ��������#�`�1�����a (A,��\���>��<��9������C�(I8�9�A=́�=����������C:��������C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I8�9�A=ā���=����������C:���C�>����C����A?( ��������#�`�1�����a *A,��\���>��<��9������C�(I8�9��<́�=����������C8����ȁ�C9�C=���=����� } l l l #�`�1�����a ,A,��\���>��<��9������C�(I8�9��<ā���=����������C8���C�>ȁ�C9�C=���=����� } l l l #�`�1�����a *A,��\���>��<��9������C�(I8�9��<́�=����������C:����ȁ�C9�C=���=����� } l l l #�`�1�����a ,A,��\���>��<��9������C�(I8�9��<ā���=����������C:���C�>ȁ�C9�C=���=����� } l l l #�`�1�����a RA,5T�\-��>���C9��<�C9���/��C9�<��( ��<�=���C9��<́���/��C9�<������( ��<�;���������������/��C9�<��( ��<�;������A������/��C9�<���$} l������#�`@?1�&�h� 7zP�@�@6���L���V�0�c� ���&��T��&(��D�D-�m� ��4a RA,5T�\-��>���C9��<�C9���/��C9�<��( ��<�=���C9�A=́���/��C9�<������( ��<�;���������������/��C9�<��( ��<�;������A������/��C9�<���$} l������#�`@?1�&�h� 7zP�@�@6���L���V�0�c� ���&��T��&(��D�D-�m� ��4a RA,5T�\-��>���C9��<�C9���/��C9�<��( ��<�=���C9��<́���/��C9�<������( ��<�;���������������/��C9�<��( ��<�;������A������/��C9�<���$} l������#�`@?1�&�h� 7zP�@�@6���L���V�0�c� ���&��T��&(��D�D-�m� ��4a RA,5T�\-��>���C9��<�C9���/��C9�<��( ��<�=���C9�A=́���/��C9�<������( ��<�;���������������/��C9�<��( ��<�;������A������/��C9�<���$} l������#�`@?1�&�h� 7zP�@�@6���L���V�0�c� ���&��T��&(��D�D-�m� ��4a �A,\��\���>��<��9����<�9�<��<�������<��9���C���<���<�C���<���<���(I;�>��<ā��������������;؃����<����<�A?���(I;��=��8́��>��<���<����������C9�<�A9ă�C���=���<���<̃�(�<�=���C<��<ā�<���<�C���<������C9�<��8́���A���<������C9�<��8́���A���<���( ���} l������#�`p?AA�&�h��& �p��apq0l@(A 7P�@&�@��PNS嶚PNS�V���L��&(��D�D-�m� ��4��&��T5m� ��<��&OD ��iBHLDH�2�gB�gBXh��D��/��& �a �A,\��\���>��<��9����<�9�<��<�������<��9���C���<���<�C���<���<���(I;�>�A=ā��������������;؃����<����<�A?���(I;��=��8́��>��<���<����������C9�<�A9ă�C���=���<���<̃�(�<�=���C<�A=ā�<���<�C���<������C9�<��8́���A���<������C9�<��8́���A���<���( ���} l������#�`p?AA�&�h��& �p��apq0l@(A 7P�@&�@��PNS嶚PNS�V���L��&(��D�D-�m� ��4��&��T5m� ��<��&OD ��iBHLDH�2�gB�gBXh��D��/��& �a �A,\��\���>��<��9����<�9�<��<�������<��9���C���<���<�C���<���<���(I;��;��<ā��������������;؃����<����<�A?���(I;��=��8́��>��<���<����������C9�<�A9ă�C���=���<���<̃�(�<�=���C<��<ā�<���<�C���<������C9�<��8́���A���<������C9�<��8́���A���<���( ���} l������#�`p?AA�&�h��& �p��apq0l@(A 7P�@&�@��PNS嶚PNS�V���L��&(��D�D-�m� ��4��&��T5m� ��<��&OD ��iBHLDH�2�gB�gBXh��D��/��& �a �A,\��\���>��<��9����<�9�<��<�������<��9���C���<���<�C���<���<���(I;��;�A=ā��������������;؃����<����<�A?���(I;��=��8́��>��<���<����������C9�<�A9ă�C���=���<���<̃�(�<�=���C<�A=ā�<���<�C���<������C9�<��8́���A���<������C9�<��8́���A���<���( ���} l������#�`p?AA�&�h��& �p��apq0l@(A 7P�@&�@��PNS嶚PNS�V���L��&(��D�D-�m� ��4��&��T5m� ��<��&OD ��iBHLDH�2�gB�gBXh��D��/��& �a ��A� ����\��@��a ��A� �����\��@��a ��A� ����\��@��a ��A� �����\��@��a ��A� ����\��@��a ��A� �����\��@��a ��A� ����\��@��a ��A� �����\��@��a ��A� ����\��@��a ��A� �����\��@��a ��A� ����\��@��a ��A� �����\��@��a ��A� ������@��a ��A� ���� �}&�,a ��A� �H��� �}&�,a ��A� ����� �}&�,a ��A� �H��� �}&�,a ��A� ���� �}&�,a ��A� ����� �}&�,a ��A� ���� �}&�,a ���� ��� A�@����@��a ���� �H� A�@����@��a ���� ��� A�@����@��a ��A� ���� �}&�,a ��A� ����� �}&�,a ���� �H� A�@����@��a ���� ��� A�@����@��a ��A� ���� �}&�,a ���� ��� A�@����@��a ���� �H� A�@����@��a ��A� ����� �}&�,a ��A� ���� �}&�,a ��A� ����� �}&�,a ��A� ���� �}&�,a ��A� ����� �}&�,a ��A� ���� �}&�,a ��A� ����� �}&�,a ���� �H� A�@����@��a ��A� ����� �}&�,a ��A� ���� �}&�,a ��A� �������@��a ��A� ������@��a ���� ��� A�@����@��a ���� �H� A�@����@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ���� �H� A�@����@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ���� �H� A�@����@��a ���� �Ⱦ A�@����@��a ���� �H� A�@����@��a ���� �� B�A8����0@�c� �, a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ���� �H� A�@����@��a ���� �� B�A8�����@��a ���� �H� A�@����@��a ���� �ȯ A�@����@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ���� �� B��@���@H�h!<Sa ���� ��� B��@���@H�h!<Sa ��A� �������@��a ��A� ������@��a ���� �Ȫ A�@���4�@��a ��A� ������@��a ��A� �������@��a ���� �H� A�@���4�@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ��A� ������@��a ��A� �������@��a ������ ��� A�@����@NSYh!�a � ����� ���B�@����@NSYh!�a ���� ܇� A�@����@��a ���� ܇� A�@����@��a ���� ܇� A�@����@��a "D,��� ������}ę\`�� #�``&rv��@�A��A8V�`��Է�&��T��&��T��&��T���6�@���iBS,�Oa "D,��� ������}ԙ\`@� #�``&pv��@�A��A8V�`��Է�&��T��&��T��&��T���6�@���iBS,�Oa "D,��� ������}ԙ\`@� #�``&pv��@�A��A8V�`��Է�&��T��&��T��&��T���6�@���iBS,�Oa "D,��� ������}ԙ\`@� #�``&pv��@�A��A8V�`��Է�&��T��&��T��&��T���6�@���iBS,�Oa ���� �I� A�@����@��a ���� �ɚ A�@����@��a ���� �ɚ A�@����@��a ���� �ɚ A�@����@��a ���� �ȯ A�@����@��a ���� ��� A�@����@��a � ����� �ɘB�@����@NSYh!�a ������ �ɘ A�@����@NSYh!�a ���� ܇� A�@����@��a ���� ܇� A�@����@��a ���� ܇� A�@����@��a "D,��� ������}��\`�� #�``&>v��@�A��A8V�`��Է�&��T��&��T��&��T���6�@���iBS,�Oa "D,��� ������}��\`@� #�``&<v��@�A��A8V�`��Է�&��T��&��T��&��T���6�@���iBS,�Oa "D,��� ������}��\`@� #�``&<v��@�A��A8V�`��Է�&��T��&��T��&��T���6�@���iBS,�Oa "D,��� ������}��\`@� #�``&<v��@�A��A8V�`��Է�&��T��&��T��&��T���6�@���iBS,�Oa ���� �I� A�@����@��a ���� �ɍ A�@����@��a ���� �ɍ A�@����@��a ���� �ɍ A�@����@��a ���� �H� A�@����@��a ���� ��� A�@����@��a � ����� �ɋB�@����@NSYh!�a ������ �ɋ A�@����@NSYh!�a ���� ��� A�@��0T�b� 0 !I�@��a ���� � � A�@��0T�b� 0 !I�@��a ��A#�`�&+6���0T�b� 0 !I�04�a� �, a ��A#�`�&)6���0T�b� 0 !I�04�a� �, a ���� � � A�@��0T�b� 0 !I�@��a ���� ��� A�@��0T�b� 0 !I�@��a ���� � � A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �  A�@��0T�b� 0 !I�@��a ���� ��~ A�@��0T�b� 0 !I�@��a ���� � ~ A�@��0T�b� 0 !I�@��a ���� ��} A�@��0T�b� 0 !I�@��a ���� � } A�@��0T�b� 0 !I�@��a ���� ��| A�@��0T�b� 0 !I�@��a ���� � | A�@��0T�b� 0 !I�@��a ���� ��{ A�@��0T�b� 0 !I�@��a ���� � { A�@��0T�b� 0 !I�@��a ���� ��z A�@��0T�b� 0 !I�@��a ���� � z A�@��0T�b� 0 !I�@��a ���� ,�5A�@�0T�b� 0 !I��p�a� �, a ���� ,�5A�@�0T�b� 0 !I��p�a� �, a ���� ��x A�@��0T�b� 0 !I�@��a ���� � x A�@��0T�b� 0 !I�@��a ���� ��o B�A8�0T�b� 0 !I��p�a� �, a �ȈA� � o� ����@�@ �0�c� ��4�}&��T&�PNS�6�PNS��@��a �ȈA� ȉn� ����@�@ �0�c� ��4�}&��T&�PNS�6�PNS��@��a ;J,@ �� �� �������a��pC�`0�0���� ؉o%�1K� 7�2F0bp v�[���#�``'��,�,�1P�D!��@�z(�p�$��A8v�`��Խ�& �iB!0OMk�!8̀�֚`N3൥&�,7m� � ��&�ص�&�,wo� ��4�y&�}&��&��&�,a 9J,@ �� �� �����ܖQ�$� E��,�@#�` &����p�Q��,Ca#�` &��$�Lj�� �In-�,�1P�D!��@�z(�p�$��A8f�`��Է�&�3V�@̳�j!8�`� �,�]�h� 0�y&�}&��&�,�n� ��<un� ��4��i!�b� ��4��a 9J,@ �� �� �����ȖQ�$� E��,�@#�` &����p�Q��,Ca#�` &��$�Lj�� � m-�,�1P�D!��@�z(�p�$��A8f�`��Է�&�3V�@̳�j!8�`� �,�]�h� 0�y&�}&��&�,�n� ��<un� ��4��k�!8�`�F�@��a 9J,@ �� �� �������Q�$� E��,�@#�` &����p�Q��,Ca#�` &��$�Lj�� ��k-�,�1P�D!��@�z(�p�$��A8f�`��Է�&�3��@N3Xi!0�n� ��4��j�!�b�6�0�c� `� A`� �,���iB!0O�i!�b� ��4��a 5J,@� ���,C #�`"�E�$� ���,�@#�`"�e� � F� ���A��2Kp��A��V2Kp TD!��@� �1K� TP ��0�c� `� ��4�}&�3��`N3Զ�&�� �m� �,Kn� ��<��&�,��&��&�@���i�!�R�a 5J,@� ���,C #�`"�E�$� ���,�@#�`"�e� � F� ���A��2Kp��A��V2Kp TD!��@� �1K� TP ��0�c� `� ��4�}&�3��`N3Զ�&�� �m� �,Kn� ��<��&�,��&��&�@���i�!�R�a 5J,@� ���,C #�`�'|E�$� ���,�@#�`�'}e� � F� ������2Kp�����U2Kp TD!��@�� �1K� TP ��0�c� `� ��4�}&�3��`N3Զ�&�� �m� �,Kn� ��<��&�,��&��&�@���i�!�R�a 5J,@� ���,C #�`�'wE�$� ���,�@#�`�'xe� � F� ������2Kp�����U2Kp TD!��@�� �1K� TP ��0�c� `� ��4�}&�3��`N3Զ�&�� �m� �,Kn� ��<��&�,��&��&�@���i�!�R�a 7J,@ �� �� ������U1K� 7x� ������1K� 7�2F0bP �RW�,�1bP �RW�,�1P�D!��@�z(�p�$��A8&�0�c� `� ��4�}&�3��`N3Զ�&�� �m� �,Kn� ��<��&�,��&��6�@��j�!�R�a 7J,@ �� �� ������U1K� 7x� ������1K� 7�2F0bP �W�,�1bP �W�,�1P�D!��@�z(�p�$��A8&�0�c� `� ��4�}&�3��`N3Զ�&�� �m� �,Kn� ��<��&�,��&��6�@��j�!�R�a � �X�@���@0�@h!8Ma � �T�@���@0�@h!8Ma � �`�@���@0�@h!8Ma ���� ��X A�@��0T�b� 0 !I�@��a ���� �IX A�@��0T�b� 0 !I�@��a ���� ��O A�@��0T�b� 0 !I�@��a ���� �IO A�@��0T�b� 0 !I�@��a ���� ��N A�@��0T�b� 0 !I�@��a ���� �IN A�@��0T�b� 0 !I�@��a ���� ��M A�@��0T�b� 0 !I�@��a ���� �IM A�@��0T�b� 0 !I�@��a ���� ��L A�@��0T�b� 0 !I�@��a ���� �IL A�@��0T�b� 0 !I�@��a ���� ��K A�@��0T�b� 0 !I�@��a ���� �JK A�@��0T�b� 0 !I�@��a ���� ��J A�@��0T�b� 0 !I�@��a ���� �IJ A�@��0T�b� 0 !I�@��a ���� ��I A�@��0T�b� 0 !I�@��a ���� �II A�@��0T�b� 0 !I�@��a ���� ��H A�@��0T�b� 0 !I�@��a ���� �IH A�@��0T�b� 0 !I�@��a ���� ��? A�@��0T�b� 0 !I�@��a ���� �I? A�@��0T�b� 0 !I�@��a ���� ��> A�@��0T�b� 0 !I�@��a ���� �J> A�@��0T�b� 0 !I�@��a ��A#�`�&,5���0T�b� 0 !I�04�a� �, a ��A#�`�&*5���0T�b� 0 !I�04�a� �, a ��A#�`�&(5���0T�b� 0 !I�04�a� �, a ��A#�`�&&5���0T�b� 0 !I�04�a� �, a ���� ��< A�@��0T�b� 0 !I�@��a ���� �I< A�@��0T�b� 0 !I�@��a ���� ��; A�@��0T�b� 0 !I�@��a ���� �I; A�@��0T�b� 0 !I�@��a ���� ��: A�@��0T�b� 0 !I�@��a ���� �I: A�@��0T�b� 0 !I�@��a ���� ��9 A�@��0T�b� 0 !I�@��a ���� �I9 A�@��0T�b� 0 !I�@��a ���� ��8 A�@��0T�b� 0 !I�@��a ���� �I8 A�@��0T�b� 0 !I�@��a ���� ��/ A�@��0T�b� 0 !I�@��a ���� �I/ A�@��0T�b� 0 !I�@��a ���� ��. A�@��0T�b� 0 !I�@��a ���� �I. A�@��0T�b� 0 !I�@��a ���� ��- A�@��0T�b� 0 !I�@��a ���� �I- A�@��0T�b� 0 !I�@��a ���� ��, A�@��0T�b� 0 !I�@��a ���� �I, A�@��0T�b� 0 !I�@��a ���� ��+ A�@��0T�b� 0 !I�@��a ���� �I+ A�@��0T�b� 0 !I�@��a ���� ��* A�@��0T�b� 0 !I�@��a ���� �I* A�@��0T�b� 0 !I�@��a ���� ��) A�@��0T�b� 0 !I�@��a ���� �I) A�@��0T�b� 0 !I�@��a ���� ��( A�@��0T�b� 0 !I�@��a ���� �I( A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� ,|4A�@�0T�b� 0 !I��p�a� �, a ���� ,z4A�@�0T�b� 0 !I��p�a� �, a ���� ,x4A�@�0T�b� 0 !I��p�a� �, a ���� ,v4A�@�0T�b� 0 !I��p�a� �, a ���� �  B�A8�0T�b� 0 !I��p�a� �, a ���� �� B�A8�0T�b� 0 !I��p�a� �, a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a ���� �� A�@��0T�b� 0 !I�@��a ���� �I A�@��0T�b� 0 !I�@��a �ȈA� ������@NS�g�D�`� �, a �ȈA� �I����@NS�g�D�`� �, a �ȈA� ���� ����@�@ �0�c� ��4��&��T��&��T�y&OD �@��a �ȈA� �I�� ����@�@ �0�c� ��4��&��T��&��T�y&OD �@��a ��A� �����0<Sa ��A� � ���0<Sa ��A� �����0<Sa ��A� � ���0<Sa ��A� �����0<Sa �b�d�@�<a �a�d�@�<a ���d�@�<a ���d�@�<a �b�p�@�pD� �a �a�p�@�pD� �a ���p�@�pD� �a ���p�@�pD� �a A, �\`d�`�n@�������`tdld{@�;�;#�`�*��A8�0<Sa A, d�\`��=�C8�<��<�C;�A=������}�l�#�`P ��A8�pD� �a ���� �� B�A8�`8E!�y& )��@�Da ��A� � �� a ���� ������0�d� 2a ��A� � ��@0��a �pCPa0bp ��;�� Ap�A8��@<1�g��a A,@ � ������ �J�B0����@<1�g��a �pCPa0bp ��;C� Ap�A8��@<1�g��a A,@� ������ �J�B0����@<1�g��a A, 4�\W ��8�C:�C9�C8��:��8́���} #�` a A,@�& !P�\Î$����N���&@�@ �PX�0f� 8��& ұh�!EB 4�}& �g��b� �Da A,@�& !P�\Î$����N���&@�@ �PX�0F�PHT�#�pH�P a� ����&ұ��}& �g��a A,@�& !P�܈A� ��� �a� �A8 �PX�0V�0H�b� CD�P �2�@0��i� Qa A,@�& !P�܈A� ��� �a� �A8 �PX�0F�PHT�#V�PH��#��0T@d� �@,`� H a A,@�& !P�\Î$����N���&@�@ �PX�0f� 8��& ұ�g�P��&�L�y& )F�0HTa A,@�& !P�\Î$����N���&@�@ �PX�0F�PHT�#f�@8��XiB!���g�P��&�L�y& )a A,@�O6!P\Ď$����B$H0�� �PX�0v� 8��& ұ�g�P�y& )V�0HT`� �4� H a A,@�O6!P\Ď$����B$H0�� �PX�0V�PHT�#v�@8���iB!���g�P�y& )��,@C���a #A,@�& !P�\Î���2b� ��;J�0�#�`�+�d�PX�0f� 8��& ұh�!EB 4��&�,�m� CDF�0HT`� H��&�,a A,@�& !P�܈A� ���# �`�+���!�&��A� � �� �PX�0��`��Է�& ұ�g�P��&�L�y& )F�0HT`� �, a "A,@�& !P�\Î���2b� ��; �0�#�`�+�d�PX�0f� 8��& ұ�j�!�R���0T@d� �@,`� H��& �i!�a #A,@�O6!P\Ď���N2b� ��;K$�hB�����N�A8�PX�0v� 8��& ұ�j�!�R���0T@d� �D�@0��h� a�b� �, a JA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>�)(Q0�#�`�?N`d�PX�0��PHT�#�P8�����`H��#��&(��D�D-Sm� �t,>b� H��&R$�@C�k�!Q��Զ�@8���iBHLDH�2�g�Pa MA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>�)(Q0�#�`�?N`d�PX�0�pH�P a� �D>�#�p8���>b� �t,>b���&0��D�D-S�#��0T@d� H��&N�#>b� �t,>�#v���L>b� �D>R�a FA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`���$����O� K0��0!P(܈A� � �D �� 0b`` ��E�@�PX�0��PHT�#�`H��#��&(��D�D-Sm� �t,>b� H��&�Hm� 1!Q�d� CD�P �2a HA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`���$����O� K0��0!P(܈A� � �D �� 0b`` ��E�@�PX�0��pHT�#>b� �t,>b���&0��D�D-S�#��0T@d� �@,`� H��&ұ����i�HLDH�2���& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>S)(Q0�#�`�?N`d�PX�0��PHT�#����L��&N�#��&ұ��m� �t,>b� H��&�Hm� ����&$��D�D-�}& hB1�a MA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>S)(Q0�#�`�?N`d�PX�0��pHT�#>b� ����#���H��#��jHLDH�2�>b� CD�P �2�@0���j�!�����&,��D�D-���k"Q���>b� ����a JA,@�OPsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�?2�� B`H��U��A� ��< �� `���U��A� ���P�"� 0b`` ��F�@�PX�0��PHT�#�P8����`H��#��&(��D�D-Sm� �t,>b� H��& �& )��`HT�#��&N�#����L��0T@a MA,@�OPsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�?2�� B`H��U��A� ��< �� `���U��A� ���P�"� 0b`` ��F�@�PX�0��pHT�#>b� ����#��H��#��XjHLDH�2�>b� CD�@0��h� a�b� �����j�!�����&,��D�D-���k"Q���>a MA,@�5WP�����`tdl�@q�d ��F���8�P�����`t�@p�d��`@r�G��<�9#�`B�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>�)(Q0�#�`@*O`d�PX�0����L��&����g��b� ����l��D>�#��&R$�@C�k"Q���Hm� �t,>�#��&$��D�D-�}& �j�!���a GA,@�5WP�����`tdl�@q�d ��F���8�P�����`t�@p�d��`@r�G��<�9#�`B�1�� B`���$����O� K0��0!P(܈A� � �D �� 0b`` ��E�@�PX�0����L��&����g��b� �D>�#��& ұ����v���L��0T@d� �@,`� �t,>�#a LA,@�5WP�����`tdl�@q�d ��F���8�P�����`t�@p�d��`@r�G��<�9#�`B�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>S)(Q0�#�`@*O`d�PX�0����L��&����g��b� ����l��D>�#��& �������H��#>b�iBHLDH�2�g�P��&�L��&ұ���a MA,@�OPQsu��`n v@`@p�`�dl@r�{`�9��<��<P�sy��`n v@`�dl@q�ld {p�<�A��#�`B2�� B`H��U��A� ��< �� `���U��A� ���P�"� 0b`` ��F�@�PX�0����L��&����g��b� �4� H��&N�#>b� ��������HT�#>Rl"����m� 1!Q�d� CD��pH��#>a MA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>�)(Q0�#�`�?N`d�PX�0�pH�P a� �D>�#�p8���>b� �t,>b���&0��D�D-S�#��0T@d� H��&N�#>b� �t,>�#v���L>b� �D>R�a PA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>�)(Q0�#�`�?N`d�PX�0暠HT�#�����&R$�@C�jB"������iBHLDH�2����j�D>�#>b� CD�@0��XjB"Q�����lB�D>r����k�"���>�#����L���a HA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`���$����O� K0��0!P(܈A� � �D �� 0b`` ��E�@�PX�0��pHT�#>b� �t,>b���&0��D�D-S�#��0T@d� �@,`� H��&ұ����i�HLDH�2���& �H�#a JA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`���$����O� K0��0!P(܈A� � �D �� 0b`` ��E�@�PX�0֚�HT�#�����&$ұ������&4��D�D-����}& hB1��g��b� �D>�#>b� �t,>b���j�HLDH�2�>�#a MA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>S)(Q0�#�`�?N`d�PX�0��pHT�#>b� ����#���H��#��jHLDH�2�>b� CD�P �2�@0���j��D>�#v���L>b� �t,>�#暀HT�#��a PA,@��7�P�����`t�@p�d��`@r�G��<�;�su��`n v@`@p�`�dl@r�{`�;��<��<#�`�?�1�� B`��U��A� �J�8�@0�hBӄ@�p4;b� �b>S)(Q0�#�`�?N`d�PX�0暠HT�#�����&$ұ������&4��D�D-�����& N�#>�#��8���>�#��0T@d� �@,`� H��&$������&(ұ���#>b�  1!Q�T���a MA,@�OPsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�?2�� B`H��U��A� ��< �� `���U��A� ���P�"� 0b`` ��F�@�PX�0��pHT�#>b� ����#��H��#��XjHLDH�2�>b� CD�@0��h� a�b� �����j�!�����&,��D�D-���k"Q���>a PA,@�OPsy��`n v@`�dl@q�ld {p�<�A���7WP�����`tdl�@q�d ��F���#�`�?2�� B`H��U��A� ��< �� `���U��A� ���P�"� 0b`` ��F�@�PX�0���HT�#�����&$ұ������&4��D�D-�����& N�#>�#��0T@d� H��& �& )���HT�#>�#��8���>�#��H��#�����&8��D�D-S�#>a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8�0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8�0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8�0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@�0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8�0<Sa 1A,�� 8�a������ ��n���� n0x�@p�d��`� d ��G��<�;#�` B�0�� Bpp0�p�lC �&���L6���L�y& �i!8Me� ��4UM�iB���>�HD4�iB���>�HD4a KA,t� 8�g������ ��n����@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�`PB�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L��&(��D�D-�n� 1!Q���i�!8MU��0<Sd� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a .A,D� %8b������ ��n���� n0q``�dl@q�l�@r� {p�:�A��#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,� 18h������ ��n����@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� 98b������ ��n���� n0s `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,t� A8h������ ��n����@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� M8b������ ��n���� n0v@`�dl@q�l�@r� {p�;�A��#�` C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8�0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@�0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8�0<Sa 1A,�� U8�a������ ��n���� nPx�@p�d��`� d ��G��<�;#�`@C�0�� Bpp0�p�lC �&���L6���L�y& �i!8Me� ��4UM�iB���>�HD4�iB���>�HD4a KA,�� ]8�g������ ��n����@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�``C�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L��&(��D�D-�n� 1!Q���i�!8MU��0<Sd� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a .A,t� e8b������ ��n���� nPq``�dl@q�l�@r� {p�:�A��#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,4� m8h������ ��n����@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� u8b������ ��n���� nPs `�dl@q�l�@r� {p�<�A��#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,�� }8h������ ��n����@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� �8b������ ��n���� nPv@`�dl@q�l�@r� {p�;�A��#�`F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8�0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8�0<Sa .A,�� �8b������ ��n���� n`s `�dl@q�l�@r� {p�9�A��#�`0F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,�� �8h������ ��n����@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�``F�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� �8b������ ��n���� n`v@`�dl@q�l�@r� {p�9�A��#�`�F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8�0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8�0<Sa A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A, $�\`d�@np������pn0xdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A,��\ah�@np������pn0q``@p�`� d��D��#�`�.��A8�0<Sa A,�\ah�@np������pn0s `@p�`� d��D��#�`B�@�0<Sa A,T�\ah�@np������pn0v@`@p�`� d��D��#�`@.��A8�0<Sa 1A,�� 8�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�` B�0�� Bpp0�p�lC �&���L6���L�y& �i!8Me� �_�O�H#�d� ��4UM�iB���>�HD4a KA,t� 8�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�`PB�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L�y& �Yi�HLDH�2�f�@NSi�HLDH�2�v�`NSո�&��T5o� 1!Q�d� �_�O�H#�d� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a .A,D� %8b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,� 18h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� 98b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,t� A8h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� M8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�` C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A, $�\`d�@np������pnPxdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A,��\ah�@np������pnPq``@p�`� d��D��#�`�.��A8�0<Sa A,�\ah�@np������pnPs `@p�`� d��D��#�`B�@�0<Sa A,T�\ah�@np������pnPv@`@p�`� d��D��#�`@.��A8�0<Sa 1A,�� U8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`@C�0�� Bpp0�p�lC �&���L6���L�y& �i!8Me� ��4UM�iB���>�HD4�iB���>�HD4a KA,�� ]8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�``C�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L��&(��D�D-�n� 1!Q���i�!8MU��0<Sd� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a .A,t� e8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,4� m8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� u8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,�� }8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� �8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,d�\ah�@np������pn`s `@p�`� d��D��#�`P3��A8�0<Sa A,��\ah�@np������pn`v@`@p�`� d��D��#�`p3��A8�0<Sa .A,�� �8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`0F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,�� �8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�``F�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� �8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�`�F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8�0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8�0<Sa A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A, $�\`d�@np������n0xdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A,��\ah�@np������n0q``@p�`� d��D��#�`�.��A8�0<Sa A,�\ah�@np������n0s `@p�`� d��D��#�`B�@�0<Sa A,T�\ah�@np������n0v@`@p�`� d��D��#�`@.��A8�0<Sa 1A,�� 8�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�` B�0�� Bpp0�p�lC �&���L6���L�y& �i!8Me� ��4UM�iB���>�HD4�iB���>�HD4a KA,t� 8�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�`PB�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L��&(��D�D-�n� 1!Q���i�!8MU��0<Sd� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a .A,D� %8b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,� 18h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� 98b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,t� A8h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� M8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�` C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A, $�\`d�@np������nPxdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A,��\ah�@np������nPq``@p�`� d��D��#�`�.��A8�0<Sa A,�\ah�@np������nPs `@p�`� d��D��#�`B�@�0<Sa A,T�\ah�@np������nPv@`@p�`� d��D��#�`@.��A8�0<Sa 1A,�� U8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`@C�0�� Bpp0�p�lC �&���L6���L�y& �Yi�!8MU�F�@NS�iB���>�HD4�iB���>�HD4a KA,�� ]8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�``C�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L��&(��D�D-�n� 1!Q���i�!8MU��0<Sd� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a .A,t� e8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,4� m8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� u8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,�� }8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� �8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,d�\ah�@np������n`s `@p�`� d��D��#�`P3��A8�0<Sa A,��\ah�@np������n`v@`@p�`� d��D��#�`p3��A8�0<Sa .A,�� �8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`0F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,�� �8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�``F�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�f�������4M��������4MF���L��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� �8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�`�F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8�0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8�0<Sa A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A, $�\`d�@np������0n0xdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A,��\ah�@np������0n0q``@p�`� d��D��#�`�.��A8�0<Sa A,�\ah�@np������0n0s `@p�`� d��D��#�`B�@�0<Sa A,T�\ah�@np������0n0v@`@p�`� d��D��#�`@.��A8�0<Sa 1A,�� 8�a������ ��n0��� n0x�@p�d��`� d ��G��<�;#�` B�0�� Bpp0�p�lC �&���L6���L�y& �i!8Me� �_�O�H#�d� ��4UM�iB���>�HD4a KA,t� 8�g������ ��n0���@n0x�@p�dl@r�d0��`� d@��M��<�A��<�;#�`PB�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L��&(��D�D-�n� 1!Q���i�!8MU��0<Sd� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a .A,D� %8b������ ��n0��� n0q``�dl@q�l�@r� {p�:�A��#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,� 18h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� 98b������ ��n0��� n0s `�dl@q�l�@r� {p�<�A��#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,t� A8h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� M8b������ ��n0��� n0v@`�dl@q�l�@r� {p�;�A��#�` C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A, $�\`d�@np������0nPxdl�@q� {@�<�;#�`�p�A8�0<Sd� ��4a A,��\ah�@np������0nPq``@p�`� d��D��#�`�.��A8�0<Sa A,�\ah�@np������0nPs `@p�`� d��D��#�`B�@�0<Sa A,T�\ah�@np������0nPv@`@p�`� d��D��#�`@.��A8�0<Sa 1A,�� U8�a������ ��n0��� nPx�@p�d��`� d ��G��<�;#�`@C�0�� Bpp0�p�lC �&���L6���L�y& �Yi�!8MU�F�@NS�iB���>�HD4�iB���>�HD4a KA,�� ]8�g������ ��n0���@nPx�@p�dl@r�d0��`� d@��M��<�A��<�;#�``C�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L��&(��D�D-o� 1!Q˴�i�!8MU��0<Sd� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a .A,t� e8b������ ��n0��� nPq``�dl@q�l�@r� {p�:�A��#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,4� m8h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {��:�A��:�A��#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� u8b������ ��n0��� nPs `�dl@q�l�@r� {p�<�A��#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,�� }8h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {��<�A��<�A��#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� �8b������ ��n0��� nPv@`�dl@q�l�@r� {p�;�A��#�`F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,d�\ah�@np������0n`s `@p�`� d��D��#�`P3��A8�0<Sa A,��\ah�@np������0n`v@`@p�`� d��D��#�`p3��A8�0<Sa .A,�� �8b������ ��n0��� n`s `�dl@q�l�@r� {p�9�A��#�`0F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a AA,�� �8h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {��9�A��9�A��#�``F�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa .A,�� �8b������ ��n0��� n`v@`�dl@q�l�@r� {p�9�A��#�`�F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8�0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8�0<Sa A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8�0<Sd� ��4a A,$�\jd�@np������Pn0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8�0<Sd� ��4a A,��\kh�@np������Pn0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8�0<Sa A,�\kh�@np������Pn0s `@p�`� d��N����>�C9��;�C>�#�`B�@�0<Sa A,T�\kh�@np������Pn0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8�0<Sa 5A,�� 8Wa������ ��n���� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�` B�0�� Bpp0�p�lC �&���L6���L�y& �Yi�!8MU�F�@NS�iB���>�HD4�iB���>�HD4a OA,t� 8W(g������ ��n����@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`PB�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!6���L��&��TV���L�y& �i�HLDH�2�v�`NSո�&��T5o� 1!Q�d� �_�O�H#�d� �_�o�H#�d� �_�_�H#�d� �_��H#�d� ��4�ma 2A,D� %8�b������ ��n���� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,� 18�(h������ ��n����@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� 98�b������ ��n���� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,t� A8�(h������ ��n����@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� M8�b������ ��n���� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�` C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,$�\jd�@np������PnPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8�0<Sd� ��4a A,��\kh�@np������PnPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8�0<Sa A,�\kh�@np������PnPs `@p�`� d��N����>�C9��;�C>�#�`B�@�0<Sa A,T�\kh�@np������PnPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8�0<Sa 5A,�� U8Wa������ ��n���� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`@C�0�� Bpp0�p�lC �&���L6���L�y& �i!8Me� ��4UM�iB���>�HD4�iB���>�HD4a OA,�� ]8W(g������ ��n����@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�``C�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!f�@NSi�HLDH�2�V���L��&(��D�D-�n� ��4U�j�!8MU�&���L�0<Sd� �_�O�H#�d� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a 2A,t� e8�b������ ��n���� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,4� m8�(h������ ��n����@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�f�������4MV���L��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� u8�b������ ��n���� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,�� }8�(h������ ��n����@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� �8�b������ ��n���� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,d�\kh�@np������Pn`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8�0<Sa A,��\kh�@np������Pn`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8�0<Sa 2A,�� �8�b������ ��n���� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`0F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,�� �8�(h������ ��n����@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�``F�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� �8�b������ ��n���� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�`�F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8�0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8�0<Sa A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8�0<Sd� ��4a A,$�\jd�@np������`n0xdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8�0<Sd� ��4a A,��\kh�@np������`n0q``@p�`� d��N����>�C9��;�C>�#�`�.��A8�0<Sa A,�\kh�@np������`n0s `@p�`� d��N����>�C9��;�C>�#�`B�@�0<Sa A,T�\kh�@np������`n0v@`@p�`� d��N����>�C9��;�C>�#�`@.��A8�0<Sa 5A,�� 8Wa������ ��n0��� n0x�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�` B�0�� Bpp0�p�lC �&���L6���L�y& �Yi�!8MU�F�@NS�iB���>�HD4�iB���>�HD4a OA,t� 8W(g������ ��n0���@n0x�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�`PB�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!��������4M6���L��&(��D�D-�n� 1!Q���i�!8MU��0<Sd� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� �_��H#�d� ��4�ma 2A,D� %8�b������ ��n0��� n0q``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,� 18�(h������ ��n0���@n0q``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� 98�b������ ��n0��� n0s `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�B�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,t� A8�(h������ ��n0���@n0s `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�B�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� M8�b������ ��n0��� n0v@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�` C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,$�\jd�@np������`nPxdl�@q� {��<�;��?�C;�C;��<�C?#�`�p�A8�0<Sd� ��4a A,��\kh�@np������`nPq``@p�`� d��N����>�C9��;�C>�#�`�.��A8�0<Sa A,�\kh�@np������`nPs `@p�`� d��N����>�C9��;�C>�#�`B�@�0<Sa A,T�\kh�@np������`nPv@`@p�`� d��N����>�C9��;�C>�#�`@.��A8�0<Sa 5A,�� U8Wa������ ��n0��� nPx�@p�d��`� d ��Q��<�;��?�C;�C;��<�C?#�`@C�0�� Bpp0�p�lC �&���L6���L�y& �i!8Me� ��4UM�iB���>�HD4�iB���>�HD4a OA,�� ]8W(g������ ��n0���@nPx�@p�dl@r�d0��`� d@��W��<�A��<�;��?�C;�C;��<�C?#�``C�0�� B0�0� �pppp0۰�lC@� !�6ĐA8!�0<Sd� 1!Q˴[i�HLDH�2�v�`NSո�&(��D�D-�n� ��4U͛hBHLDH�2�jB���>�HD4�i!8Me� �_�o�H#�d� ��4�m[kB���>�HD4�jB���>�HD4a 2A,t� e8�b������ ��n0��� nPq``�dl@q�l�@r� {�:�A����>�C9��;�C>�#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,4� m8�(h������ ��n0���@nPq``�dl@q�d l@s�l�@t� {p�:�A��:�A����>�C9��;�C>�#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� u8�b������ ��n0��� nPs `�dl@q�l�@r� {��<�A����>�C9��;�C>�#�`�C�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,�� }8�(h������ ��n0���@nPs `�dl@q�d l@s�l�@t� {p��<�A��<�A����>�C9��;�C>�#�`�C�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �Yi�HLDH�2�F���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� �8�b������ ��n0��� nPv@`�dl@q�l�@r� {�;�A����>�C9��;�C>�#�`F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,d�\kh�@np������`n`s `@p�`� d��N����>�C9��;�C>�#�`P3��A8�0<Sa A,��\kh�@np������`n`v@`@p�`� d��N����>�C9��;�C>�#�`p3��A8�0<Sa 2A,�� �8�b������ ��n0��� n`s `�dl@q�l�@r� {��9�A����>�C9��;�C>�#�`0F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a EA,�� �8�(h������ ��n0���@n`s `�dl@q�d l@s�l�@t� {p��9�A��9�A����>�C9��;�C>�#�``F�0�� B0�0� �0�p�lC@� !�6ĐA86���L�y& �i�HLDH�2�V���L��&4~!>�#�DD��&4~!��#�DD��&$��D�D-��&4~!~�#�DD��&4~!��#�DDa 2A,�� �8�b������ ��n0��� n`v@`�dl@q�l�@r� {�9�A����>�C9��;�C>�#�`�F�0�� B0�P�lC �&���L6���L�y& �iB���>�HD4YiB���>�HD4a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�F`8�0<Sd� ��4�}&�Pa A,��\id�@np������ n0x�@p� ld{а���>�C9��;�C>�' #�`�F`8�0<Sd� ��4�}&�Pa A,t�\jh�@np������ n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8�0<Sd� E,a A,��\jh�@np������ n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8�0<Sd� E,a A,4�\jh�@np������ n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a 0A,��\s��<Ѓ�;��8�;��=��؃��<���A/�������<���������P����� 0�0' ' #�`�F�!&�0U�B~!~���d� ��4n� ��4�y& �Yh�T E����O\S�}&�Pa DA,�\}��<Ѓ�;��8�;��=�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�F�B B��@6�0U�B~!����d� S,���>qM Lf�PNS�v�PNS�V�@NSj�!8MU��0<Sd� E,a� S,���>qM L&�0U�B~!~���a ,A,$�\t��<Ѓ�;��8�;��=��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,D�\~��<Ѓ�;��8�;��=�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`0G�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,d�\t��<Ѓ�;��8�;��=��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�`PGC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,��\~��<Ѓ�;��8�;��=�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`pG�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�`�GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,��\id�@np������ nPx�@p� ld{а���>�C9��;�C>�'#�`�F`8�0<Sd� ��4�}&�Pa A,t�\jh�@np������ nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8�0<Sd� E,a A,��\jh�@np������ nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8�0<Sd� E,a A,4�\jh�@np������ nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a 0A,��\s��<Ѓ�;��8�;��=��؃�A=���A/�������<���������P����� 0�0''#�`�G�!&�0U�B~!~���d� ��4n� ��4�y& �Yh�T E����O\S�}&�Pa DA,��\}��<Ѓ�;��8�;��=����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�G�B B��@6�0U�B~!����d� S,���>qM Lf�PNS�v�PNS�V�@NSj�!8MU��0<Sd� E,a� S,���>qM L&�0U�B~!~���a ,A,�\t��<Ѓ�;��8�;��=��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,$�\~��<Ѓ�;��8�;��=����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`J�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,D�\t��<Ѓ�;��8�;��=��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`0JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,d�\~��<Ѓ�;��8�;��=����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`PJ�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`pJC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,t�\jh�@np������ n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8�0<Sd� E,a A,��\jh�@np������ n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8�0<Sd� E,a ,A,��\t��<Ѓ�;��8�;��=��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�`�JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,��\~��<Ѓ�;��8�;��=�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�J�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�F`8�0<Sd� ��4�}&�Pa A,��\id�@np������pn0x�@p� ld{а���>�C9��;�C>�' #�`�F`8�0<Sd� ��4�}&�Pa A,t�\jh�@np������pn0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8�0<Sd� E,a A,��\jh�@np������pn0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8�0<Sd� E,a A,4�\jh�@np������pn0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a 0A,��\s��<Ѓ�;��8�;��8��؃��<���A/�������<���������P����� 0�0' ' #�`�F�!&�0U�B~!~���d� ��4n� ��4�y& �Yh�T E����O\S�}&�Pa DA,�\}��<Ѓ�;��8�;��8�����<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�F�B B��@6�0U�B~!����d� S,���>qM Lf�PNS�v�PNS�V�@NSj�!8MU��0<Sd� E,a� S,���>qM L&�0U�B~!~���a ,A,$�\t��<Ѓ�;��8�;��8��؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,D�\~��<Ѓ�;��8�;��8�����<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`0G�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,d�\t��<Ѓ�;��8�;��8��؃��<́��.����>�A��A?���l l l������ ��� 0�0#�`PGC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,��\~��<Ѓ�;��8�;��8�����<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`pG�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�`�GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,��\id�@np������pnPx�@p� ld{а���>�C9��;�C>�'#�`�F`8�0<Sd� ��4�}&�Pa A,t�\jh�@np������pnPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8�0<Sd� E,a A,��\jh�@np������pnPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8�0<Sd� E,a A,4�\jh�@np������pnPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a 0A,��\s��<Ѓ�;��8�;��8��؃�A=���A/�������<���������P����� 0�0''#�`�G�!&�0U�B~!~���d� ��4n� ��4�y& �Yh�T E����O\S�}&�Pa DA,��\}��<Ѓ�;��8�;��8����A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�G�B B��@6�0U�B~!����d� S,���>qM Lf�PNS�v�PNS�V�@NSj�!8MU��0<Sd� E,a� S,���>qM L&�0U�B~!~���a ,A,�\t��<Ѓ�;��8�;��8��؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,$�\~��<Ѓ�;��8�;��8����A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`J�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,D�\t��<Ѓ�;��8�;��8��؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`0JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,d�\~��<Ѓ�;��8�;��8����A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`PJ�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`pJC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,t�\jh�@np������pn`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8�0<Sd� E,a A,��\jh�@np������pn`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8�0<Sd� E,a ,A,��\t��<Ѓ�;��8�;��8��؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�`�JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,��\~��<Ѓ�;��8�;��8�����9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�J�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8��؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�F`8�0<Sd� ��4�}&�Pa A,��\id�@np������0n0x�@p� ld{а���>�C9��;�C>�' #�`�F`8�0<Sd� ��4�}&�Pa A,t�\jh�@np������0n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8�0<Sd� E,a A,��\jh�@np������0n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8�0<Sd� E,a A,4�\jh�@np������0n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a 0A,��\s��<Ѓ�;��8�;��8̃؃��<���A/�������<���������P����� 0�0' ' #�`�F�!&�0U�B~!~���d� ��4n� ��4�y& �Yh�T E����O\S�}&�Pa DA,�\}��<Ѓ�;��8�;��8̃���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�F�B B��@6�0U�B~!����d� S,���>qM Lf�PNS�v�PNS�V�@NSj�!8MU��0<Sd� E,a� S,���>qM L&�0U�B~!~���a ,A,$�\t��<Ѓ�;��8�;��8̃؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,D�\~��<Ѓ�;��8�;��8̃���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`0G�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,d�\t��<Ѓ�;��8�;��8̃؃��<́��.����>�A��A?���l l l������ ��� 0�0#�`PGC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,��\~��<Ѓ�;��8�;��8̃���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`pG�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�`�GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,��\id�@np������0nPx�@p� ld{а���>�C9��;�C>�'#�`�F`8�0<Sd� ��4�}&�Pa A,t�\jh�@np������0nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8�0<Sd� E,a A,��\jh�@np������0nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8�0<Sd� E,a A,4�\jh�@np������0nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a 0A,��\s��<Ѓ�;��8�;��8̃؃�A=���A/�������<���������P����� 0�0''#�`�G�!&�0U�B~!~���d� ��4n� ��4�y& �Yh�T E����O\S�}&�Pa DA,��\}��<Ѓ�;��8�;��8̃��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�G�B B��@6�0U�B~!����d� S,���>qM Lf�PNS�v�PNS�V�@NSj�!8MU��0<Sd� E,a� S,���>qM L&�0U�B~!~���a ,A,�\t��<Ѓ�;��8�;��8̃؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,$�\~��<Ѓ�;��8�;��8̃��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`J�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,D�\t��<Ѓ�;��8�;��8̃؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`0JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,d�\~��<Ѓ�;��8�;��8̃��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`PJ�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`pJC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,t�\jh�@np������0n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8�0<Sd� E,a A,��\jh�@np������0n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8�0<Sd� E,a ,A,��\t��<Ѓ�;��8�;��8̃؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�`�JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,��\~��<Ѓ�;��8�;��8̃���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�J�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��8̃؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�F`8�0<Sd� ��4�}&�Pa A,��\id�@np������@n0x�@p� ld{а���>�C9��;�C>�' #�`�F`8�0<Sd� ��4�}&�Pa A,t�\jh�@np������@n0q``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8�0<Sd� E,a A,��\jh�@np������@n0s `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8�0<Sd� E,a A,4�\jh�@np������@n0v@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃��<���A/�������<���������P����� 0�0' ' #�`�F�!&�0U�B~!~���d� ��4n� ��4�y& �Yh�T E����O\S�}&�Pa DA,�\}��<Ѓ�;��8�;��=Ѓ���<���A/����������L�������������P����� 0�0� �0�P G G G G # �`�F�B B��@6�0U�B~!����d� S,���>qM Lf�PNS�v�PNS�V�@NSj�!8MU��0<Sd� E,a� S,���>qM L&�0U�B~!~���a ,A,$�\t��<Ѓ�;��8�;��=Ѓ؃��<ā��.����>�A��A?���l�l�l������ ��� 0�0#�`GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,D�\~��<Ѓ�;��8�;��=Ѓ���<ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`0G�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,d�\t��<Ѓ�;��8�;��=Ѓ؃��<́��.����>�A��A?���l l l������ ��� 0�0#�`PGC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���<́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`pG�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��<���.����>�A��A?���l�l�l������ ��� 0�0#�`�GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,��\id�@np������@nPx�@p� ld{а���>�C9��;�C>�'#�`�F`8�0<Sd� ��4�}&�Pa A,t�\jh�@np������@nPq``� d��`@q� ;�:��?�C;�C;��<�C?#�``6� `8�0<Sd� E,a A,��\jh�@np������@nPs `� d��`@q� ;��<��?�C;�C;��<�C?#�`�6� `8�0<Sd� E,a A,4�\jh�@np������@nPv@`� d��`@q� ;�;��?�C;�C;��<�C?#�` 6� `8�0<Sd� E,a 0A,��\s��<Ѓ�;��8�;��=Ѓ؃�A=���A/�������<���������P����� 0�0''#�`�G�!&�0U�B~!~���d� ��4n� ��4�y& �Yh�T E����O\S�}&�Pa DA,��\}��<Ѓ�;��8�;��=Ѓ��A=���A/����������L�������������P����� 0�0� �0�P GGGG# �`�G�B B��@6�0U�B~!����d� S,���>qM Lf�PNS�v�PNS�V�@NSj�!8MU��0<Sd� E,a� S,���>qM L&�0U�B~!~���a ,A,�\t��<Ѓ�;��8�;��=Ѓ؃�A=ā��.����>�A��A?���l�l�l������ ��� 0�0#�`�GC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,$�\~��<Ѓ�;��8�;��=Ѓ��A=ā��.����>�A������A?���l�l�l�l�l������ ��� 0�0� �0�P # �`J�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,D�\t��<Ѓ�;��8�;��=Ѓ؃�A=́��.����>�A��A?���l l l������ ��� 0�0#�`0JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,d�\~��<Ѓ�;��8�;��=Ѓ��A=́��.����>�A������A?���l l l l l������ ��� 0�0� �0�P # �`PJ�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃�A=���.����>�A��A?���l�l�l������ ��� 0�0#�`pJC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,t�\jh�@np������@n`s `� d��`@q� ;��9��?�C;�C;��<�C?#�``:� `8�0<Sd� E,a A,��\jh�@np������@n`v@`� d��`@q� ;�9��?�C;�C;��<�C?#�`�:� `8�0<Sd� E,a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9́��.����>�A��A?���l`l`l������ ��� 0�0#�`�JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a ;A,��\~��<Ѓ�;��8�;��=Ѓ���9́��.����>�A������A?���l`l`l`l`l������ ��� 0�0� �0�P # �`�J�A B��@F�0U�B~!����d� �3E��PT�B�0U�B~!>���d� S,���>qM L6�0U�B~!����a ,A,��\t��<Ѓ�;��8�;��=Ѓ؃��9���.����>�A��A?���l@l@l������ ��� 0�0#�`�JC! �0<Sd� S,���>qM L&�0U�B~!~���d� E,a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1��� �y&�c� �t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1��� �y&�c� �t �a A,��\ix������ �n s `@p�`@q�`@r�`@s�H����#�`�1��� �y&�c� �t �a A,��\j|������������0rdldld ld0{��<��<��<��<#�`�1��� �y&�c� �t �a ���� ܇HA�@��PT�B�@0��a ���� ܇HA�@�@0���gBQ Ea ���� ��?A�@�@0���gBQ Ea ���� ��?A�@�@0���gBQ Ea ���� ��?A�@�@0���gBQ Ea ���� ��?A�@��PT�B�@0��a ��A� ��>#�`p#1��@0��h!�b� E,a ��A� � >#�`; 1��@0��h!�b� E,a ���� ��= �hB�&�İQ�C8�@<1�g��b� E,a ���� ��= �hB�&�İQ�C8�@<1�g��b� E,a ���� �= �hB�&�İQ�C8�@<1�g��b� E,a ���� �= �hB�&�İQ�C8�@<1�g��b� E,a ���� �= �hB�&�İQ�C8�@<1�g��b� E,a ���� �= �hB�&�İQ�C8�@<1�g��b� E,a ��A� ��>#�`�;�@� 0� ��@�@�@<1�g��b� �,�}&�Pa ��A� �I>#�`�;�@� 0� ��@�@�@<1�g��b� �,�}&�Pa A, $�\U�C8��;�;�C9�������A #�`+���@� 4a ����� �; B�A8�0T�b� 0 !I��p�a� �, a ���� �G:A�@�@0��h!�b� E,a ���� ��9A�@�@0��h!�b� E,a ���� �G9A�@�@0��h!�b� E,a ���� ��8A�@�@0��h!�b� E,a ���� �G8A�@�@0��h!�b� E,a ���� ��/A�@�@0��h!�b� E,a ���� �G/A�@�@0��h!�b� E,a ���� ��.A�@�@0��h!�b� E,a ���� �G.A�@�@0��h!�b� E,a ��A� � ���0<Sa ��A� �J-��0<Sa ���� �-A�@�0<Sd� �D1�����a ��A� �A,��0<Sa A,�� 7���� D�6F�A8�� %MD� �3��i����>�HD4���&<~!~�#�DD���g��L��&��Ta ��A� �O+��Da A,@� 0#�` '�0�����B�����1�@ �lC0� � d F�������4MV�������4Mf�������4Ma A,@1� 0#�` '�0������0bP r u0�@ �lC0� � d F�������4MV�������4Mf�������4Ma A,@IEY�3#�` '�@�����1bP r �l1� ��6��A8 V�������4Mf�������4Mv�������4Ma A,@a�Fq�3#�` '�@�����1bP r �l1� ��6��A8 V�������4Mf�������4Mv�������4Ma A,@ #�` '�da ��A� ��*�Aa ��A� � )�a ��A� � )�a A,@ #�`+� a ��A� � (�a ���� �(A�@��0T�b� 0 !I�@��a ���� ��A�@��0T�b� 0 !I�@��a ���� �A�@��0T�b� 0 !I�@��a ���� ��A�@��0T�b� 0 !I�@��a ���� �A�@��0T�b� 0 !I�@��a ���� ��A�@��0T�b� 0 !I�@��q �2"�^�5��h�`�6�j�b�68�m�d�6X�y�f�7x�|�h�7��~�j�8�扃l�8ؖ��n�8����p�9���r�98睃t�9X���v�:x���x�:����z�;�繃|�;ؗ��~�;��ȃ��<�˃��<8�΃��<X�؃��=x�ۃ��=��߃��>��ꃌ�>��탎�>�`����?�����?8` ���@X����Ax ���A��)���B� /���C��<���C��J���D�O���E8@]���FX�j���Fx x���G��}���H������I�`����J�P����L�߄��OH ����O������O� ����O�����OH ����O�����P� ���P�� ���P( ���Ph����P�0���Q�����Q(P���Qh����Q�����Q�(���R(�)���Rh+���R��,���R� .���R((�/���Sh(09���S�(�:���S�(@<���S()�=���Sh)@?���T�)�H���T�)PJ���T(*�K���Th*pM���T�*0O���T�*�X���U(+0Z���Uh+�[���U�+0]���U�+�^���U(,�h���Vh,j���V�,�k���V�, m���V(-�n���Vh-Px���W�-�y���W�-`{���W(.�|���Wh.`~���W�.����X�.�����X/`����XH/p����Yx/���Y�/����Y�/�����Z�/@����Z8����Z88�����ZX8`����[�8຅��[�8`����\�8Ʌ��\9�ʅ��\89@̅��\X9 ΅��\�9؅��]�9 څ��]�9܅��]8:�݅��]x:�߅��^�:�酭�^�:�녱�^8;`텵�^x;@�_�;@����_�;@����_8<@����_x<���`=����a�=����bX>�-���c�>�<���d�?�K���d�?@M���d�?�N���d(H�X���ehH�Z���e�H�\���e�Hp^���e(IPh���fhI0j���f�Il���f�I�m���f(J�o���ghJ�y���g�J�{���g�J�}���g�J����h(K�����hhK�����h�Kp����h�KP����i(L0����ihL����i�L���i�LО���i(M�����jhM�����j�Mp����j�MP����j(N0����khN0����k�NP����k�Np����k(OpȆ��lhOPʆ��l�O0̆��l�OΆ��l(X�φ��mhX�ن��m�X�ۆ��m�X�݆��m(Yp߆��nhYP醘�n�Y0놜�n�Y토�n(Z��nhZ ����o�Z0����o�Z�����o([�����oH[����oh[0���p�[p ���p�[� ���p�[� ���p\����qH\����qx\���q�\@���q�\ (���r�\�+���r]/���s(]�:���sh]�>���t�]0K���t�]@Z���u�]�k���w�]}���x^�����y(^�����zH^����{h^�ˇ��}�^�݇��~�^`����^p ����^@����_���ׁ(_ ����H_p*��ڂh_p:��׃�_�I��ʄ�_�X�����_�]����_�h����h�m����(h�}����Hh������hh���ډ�hP������h�������h0���΋�h������i�����(i`�����Hi`�����hi�������i������i������i� ��ؐ�i���ؑj�(��˒(j�/����Hj�>����hj@J��Ԕ�jpY��Ǖ�j ^�����j�i�����jm���kPx����(kP�����Hk������hk�������kp���Қ�k�������k�������kp�����l�����(l������Hl0�����hl`������l �����l� ����l������l@���m@+���(mp:��ףHm�I��ʤhm`N�����m�Y�����m�^�����m`n�����m�}����n�����(n �����HnP�����hn0�����n������n���ܫ�n�������n �����o������(o������Ho�����hop�����o� �����o�����o�-�����op=����x0I��Ǵ(x�X��µHx^����hx�i�����x�m�����xpy��η�x����Ӹ�x����ιyP���ɺ(y������Hy@���»hy����ʼ�y����Ž�y�������y@������y����z� ����(z�����Hz����hz(�����z,�����z�;�����z@J�����z�X����{�]����({�i����H{o����h{@~�����{�������{�������{�������{P�����|0�����(|@�����H|P�����h|P������|�������|�������|0������| ����} ����(}@����H}�)����h}08�����}�>�����}�J�����}�Y�����}p^����~�j����(~�n����H~�z����h~������~�������~p������~`������~`�����������(������Hp�����h ������ �������������� ������ ����������(������H�P-����h�<�������J�������O����Ȉ�[������h�����x����(��~����H�`�����h�`�������������������ȉ ������������(�������H�@�����x��������0������p������������(�0�����H���������������ȋ�������P�����H����������������0�������������(� �����X� �����x� ������ ����ȍ� ������� ����8������x������] }��KthreadIdxblockIdxblockDimgridDimwarpSize_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9all_hostsE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_35_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_37_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_50_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_52_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_53_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_60_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_61_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_62_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_70_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_72_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_75_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_80_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_86_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_87_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_89_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail9sm_90_bitE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target6detail11all_devicesE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target7is_hostE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target9is_deviceE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target10any_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target9no_targetE_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_35E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_37E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_50E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_52E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_53E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_60E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_61E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_62E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_70E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_72E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_75E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_80E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_86E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_87E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_89E_ZN56_INTERNAL_00000000_25_nvrtc_builtins_compute_90_0fd890352nv6target5sm_90E__cudaCDP2DeviceGetAttribute__cudaCDP2DeviceGetLimit__cudaCDP2DeviceGetCacheConfig__cudaCDP2DeviceGetSharedMemConfig__cudaCDP2GetLastError__cudaCDP2PeekAtLastError__cudaCDP2GetErrorString__cudaCDP2GetErrorName__cudaCDP2GetDeviceCount__cudaCDP2GetDevice__cudaCDP2StreamCreateWithFlags__cudaCDP2StreamDestroy__cudaCDP2StreamWaitEvent__cudaCDP2StreamWaitEvent_ptsz__cudaCDP2EventCreateWithFlags__cudaCDP2EventRecord__cudaCDP2EventRecord_ptsz__cudaCDP2EventRecordWithFlags__cudaCDP2EventRecordWithFlags_ptsz__cudaCDP2EventDestroy__cudaCDP2FuncGetAttributes__cudaCDP2Free__cudaCDP2Malloc__cudaCDP2MemcpyAsync__cudaCDP2MemcpyAsync_ptsz__cudaCDP2Memcpy2DAsync__cudaCDP2Memcpy2DAsync_ptsz__cudaCDP2Memcpy3DAsync__cudaCDP2Memcpy3DAsync_ptsz__cudaCDP2MemsetAsync__cudaCDP2MemsetAsync_ptsz__cudaCDP2Memset2DAsync__cudaCDP2Memset2DAsync_ptsz__cudaCDP2Memset3DAsync__cudaCDP2Memset3DAsync_ptsz__cudaCDP2RuntimeGetVersion__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessor__cudaCDP2OccupancyMaxActiveBlocksPerMultiprocessorWithFlags__cudaCDP2GetParameterBuffer__cudaCDP2GetParameterBufferV2__cudaCDP2LaunchDevice_ptsz__cudaCDP2LaunchDeviceV2_ptsz__cudaCDP2LaunchDevice__cudaCDP2LaunchDeviceV2mallocfreellvm.memcpy.p0i8.p0i8.i64llvm.memset.p0i8.i64llvm.nvvm.associate.access.property.p0i8.p0i8llvm.nvvm.memcpy.async.p3i8.p1i8__nv_aligned_device_malloc_impl_Z10make_char1a_Z11make_uchar1h_Z10make_char2aa_Z11make_uchar2hh_Z10make_char3aaa_Z11make_uchar3hhh_Z10make_char4aaaa_Z11make_uchar4hhhh_Z11make_short1s_Z12make_ushort1t_Z11make_short2ss_Z12make_ushort2tt_Z11make_short3sss_Z12make_ushort3ttt_Z11make_short4ssss_Z12make_ushort4tttt_Z9make_int1i_Z10make_uint1j_Z9make_int2ii_Z10make_uint2jj_Z9make_int3iii_Z10make_uint3jjj_Z9make_int4iiii_Z10make_uint4jjjj_Z10make_long1l_Z11make_ulong1m_Z10make_long2ll_Z11make_ulong2mm_Z10make_long3lll_Z11make_ulong3mmm_Z10make_long4llll_Z11make_ulong4mmmm_Z11make_float1f_Z11make_float2ff_Z11make_float3fff_Z11make_float4ffff_Z14make_longlong1x_Z15make_ulonglong1y_Z14make_longlong2xx_Z15make_ulonglong2yy_Z14make_longlong3xxx_Z15make_ulonglong3yyy_Z14make_longlong4xxxx_Z15make_ulonglong4yyyy_Z12make_double1d_Z12make_double2dd_Z12make_double3ddd_Z12make_double4dddd__vimax_s32_relu__vimax_s16x2_relu__vimin_s32_relu__vimin_s16x2_relu__vimax3_s32__vimax3_s16x2__vimax3_u32__vimax3_u16x2__vimin3_s32__vimin3_s16x2__vimin3_u32__vimin3_u16x2__vimax3_s32_relu__vimax3_s16x2_relu__vimin3_s32_relu__vimin3_s16x2_relu__viaddmax_s32__viaddmax_s16x2__viaddmax_u32__viaddmax_u16x2__viaddmin_s32__viaddmin_s16x2__viaddmin_u32__viaddmin_u16x2__viaddmax_s32_relu__viaddmax_s16x2_relu__viaddmin_s32_relu__viaddmin_s16x2_relu__vibmax_s32__vibmax_u32__vibmin_s32__vibmin_u32__vibmax_s16x2__vibmax_u16x2__vibmin_s16x2__vibmin_u16x2_Z7signbitf__signbitf_Z7signbitd__signbit_Z7signbite__signbitl_Z8isfinitef__finitef_Z8isfinited__finite_Z8isfinitee__finitel_Z5isnanf__isnanf_Z5isnand__isnan_Z5isnane__isnanl_Z5isinff__isinff_Z5isinfd__isinf_Z5isinfe__isinfl_Z3absxllabs_Z3absl_Z3absffabsf_Z3absdfabs_Z4fabsf_Z4ceilfceilf_Z5floorffloorf_Z4sqrtfsqrtf_Z3powffpowf_Z3powfi_Z5powiffi_Z3powdi_Z4powidi_Z3logflogf_Z5log10flog10f_Z4fmodfffmodf_Z4modffPfmodff_Z3expfexpf_Z5frexpfPifrexpf_Z5ldexpfildexpf_Z4asinfasinf_Z3sinfsinf_Z4sinhfsinhf_Z4acosfacosf_Z3cosfcosf_Z4coshfcoshf_Z4atanfatanf_Z5atan2ffatan2f_Z3tanftanf_Z4tanhftanhf_Z4logbflogbf_Z5ilogbfilogbf_Z6scalbnfiscalbnf_Z7scalblnflscalblnf_Z4exp2fexp2f_Z5expm1fexpm1f_Z4log2flog2f_Z5log1pflog1pf_Z5acoshfacoshf_Z5asinhfasinhf_Z5atanhfatanhf_Z5hypotffhypotf_Z4cbrtfcbrtf_Z3erfferff_Z4erfcferfcf_Z6lgammaflgammaf_Z6tgammaftgammaf_Z8copysignffcopysignf_Z9nextafterffnextafterf_Z9remainderffremainderf_Z6remquoffPiremquof_Z5roundfroundf_Z6lroundflroundf_Z7llroundfllroundf_Z5truncftruncf_Z4rintfrintf_Z5lrintflrintf_Z6llrintfllrintf_Z9nearbyintfnearbyintf_Z4fdimfffdimf_Z3fmaffffmaf_Z4fmaxfffmaxf_Z4fminfffminf_Z5exp10fexp10f_Z5rsqrtfrsqrtf_Z5rcbrtfrcbrtf_Z5sinpifsinpif_Z5cospifcospif_Z8sincospifPfS_sincospif_Z6sincosfPfS_sincosf_Z2j0fj0f_Z2j1fj1f_Z2jnifjnf_Z2y0fy0f_Z2y1fy1f_Z2ynifynf_Z13cyl_bessel_i0fcyl_bessel_i0f_Z13cyl_bessel_i1fcyl_bessel_i1f_Z6erfinvferfinvf_Z7erfcinvferfcinvf_Z10normcdfinvfnormcdfinvf_Z7normcdffnormcdff_Z5erfcxferfcxf_Z8copysigndfcopysign_Z8copysignfd_Z3minjjumin_Z3minij_Z3minji_Z3minllminllmin_Z3minmmullmin_Z3minlm_Z3minml_Z3minxx_Z3minyy_Z3minxy_Z3minyx_Z3minff_Z3minddfmin_Z3minfd_Z3mindf_Z3maxjjumax_Z3maxij_Z3maxji_Z3maxllmaxllmax_Z3maxmmullmax_Z3maxlm_Z3maxml_Z3maxxx_Z3maxyy_Z3maxxy_Z3maxyx_Z3maxff_Z3maxddfmax_Z3maxfd_Z3maxdf_Z9atomicAddPii__iAtomicAdd_Z9atomicAddPjj__uAtomicAdd_Z9atomicSubPii_Z9atomicSubPjj_Z10atomicExchPii__iAtomicExch_Z10atomicExchPjj__uAtomicExch_Z10atomicExchPff__fAtomicExch_Z9atomicMinPii__iAtomicMin_Z9atomicMinPjj__uAtomicMin_Z9atomicMaxPii__iAtomicMax_Z9atomicMaxPjj__uAtomicMax_Z9atomicIncPjj__uAtomicInc_Z9atomicDecPjj__uAtomicDec_Z9atomicAndPii__iAtomicAnd_Z9atomicAndPjj__uAtomicAnd_Z8atomicOrPii__iAtomicOr_Z8atomicOrPjj__uAtomicOr_Z9atomicXorPii__iAtomicXor_Z9atomicXorPjj__uAtomicXor_Z9atomicCASPiii__iAtomicCAS_Z9atomicCASPjjj__uAtomicCAS_Z9atomicAddPyy__ullAtomicAdd_Z10atomicExchPyy__ullAtomicExch_Z9atomicCASPyyy__ullAtomicCAS_Z3anyb__any_Z3allb__all_Z3fmaddd13cudaRoundMode__fma_rz__fma_ru__fma_rd__fma_rn_Z4dmuldd13cudaRoundMode__dmul_rz__dmul_ru__dmul_rd__dmul_rn_Z4dadddd13cudaRoundMode__dadd_rz__dadd_ru__dadd_rd__dadd_rn_Z4dsubdd13cudaRoundMode__dsub_rz__dsub_ru__dsub_rd__dsub_rn_Z10double2intd13cudaRoundMode__double2int_rn__double2int_ru__double2int_rd__double2int_rz_Z11double2uintd13cudaRoundMode__double2uint_rn__double2uint_ru__double2uint_rd__double2uint_rz_Z9double2lld13cudaRoundMode__double2ll_rn__double2ll_ru__double2ll_rd__double2ll_rz_Z10double2ulld13cudaRoundMode__double2ull_rn__double2ull_ru__double2ull_rd__double2ull_rz_Z9ll2doublex13cudaRoundMode__ll2double_rz__ll2double_ru__ll2double_rd__ll2double_rn_Z10ull2doubley13cudaRoundMode__ull2double_rz__ull2double_ru__ull2double_rd__ull2double_rn_Z10int2doublei13cudaRoundMode_Z11uint2doublej13cudaRoundMode_Z12float2doublef13cudaRoundMode_Z9atomicAddPff__fAtomicAdd_Z9atomicMinPxx__illAtomicMin_Z9atomicMaxPxx__illAtomicMax_Z9atomicAndPxx__llAtomicAnd_Z8atomicOrPxx__llAtomicOr_Z9atomicXorPxx__llAtomicXor_Z9atomicMinPyy__ullAtomicMin_Z9atomicMaxPyy__ullAtomicMax_Z9atomicAndPyy__ullAtomicAnd_Z8atomicOrPyy__ullAtomicOr_Z9atomicXorPyy__ullAtomicXor_Z9atomicAddPdd__dAtomicAdd_Z15atomicAdd_blockPii__iAtomicAdd_block_Z16atomicAdd_systemPii__iAtomicAdd_system_Z15atomicAdd_blockPjj__uAtomicAdd_block_Z16atomicAdd_systemPjj__uAtomicAdd_system_Z15atomicAdd_blockPyy__ullAtomicAdd_block_Z16atomicAdd_systemPyy__ullAtomicAdd_system_Z15atomicAdd_blockPff__fAtomicAdd_block_Z16atomicAdd_systemPff__fAtomicAdd_system_Z15atomicAdd_blockPdd__dAtomicAdd_block_Z16atomicAdd_systemPdd__dAtomicAdd_system_Z15atomicSub_blockPii_Z16atomicSub_systemPii_Z15atomicSub_blockPjj_Z16atomicSub_systemPjj_Z16atomicExch_blockPii__iAtomicExch_block_Z17atomicExch_systemPii__iAtomicExch_system_Z16atomicExch_blockPjj__uAtomicExch_block_Z17atomicExch_systemPjj__uAtomicExch_system_Z16atomicExch_blockPyy__ullAtomicExch_block_Z17atomicExch_systemPyy__ullAtomicExch_system_Z16atomicExch_blockPff__fAtomicExch_block_Z17atomicExch_systemPff__fAtomicExch_system_Z15atomicMin_blockPii__iAtomicMin_block_Z16atomicMin_systemPii__iAtomicMin_system_Z15atomicMin_blockPxx__illAtomicMin_block_Z16atomicMin_systemPxx__illAtomicMin_system_Z15atomicMin_blockPjj__uAtomicMin_block_Z16atomicMin_systemPjj__uAtomicMin_system_Z15atomicMin_blockPyy__ullAtomicMin_block_Z16atomicMin_systemPyy__ullAtomicMin_system_Z15atomicMax_blockPii__iAtomicMax_block_Z16atomicMax_systemPii__iAtomicMax_system_Z15atomicMax_blockPxx__illAtomicMax_block_Z16atomicMax_systemPxx__illAtomicMax_system_Z15atomicMax_blockPjj__uAtomicMax_block_Z16atomicMax_systemPjj__uAtomicMax_system_Z15atomicMax_blockPyy__ullAtomicMax_block_Z16atomicMax_systemPyy__ullAtomicMax_system_Z15atomicInc_blockPjj__uAtomicInc_block_Z16atomicInc_systemPjj__uAtomicInc_system_Z15atomicDec_blockPjj__uAtomicDec_block_Z16atomicDec_systemPjj__uAtomicDec_system_Z15atomicCAS_blockPiii__iAtomicCAS_block_Z16atomicCAS_systemPiii__iAtomicCAS_system_Z15atomicCAS_blockPjjj__uAtomicCAS_block_Z16atomicCAS_systemPjjj__uAtomicCAS_system_Z15atomicCAS_blockPyyy__ullAtomicCAS_block_Z16atomicCAS_systemPyyy__ullAtomicCAS_system_Z15atomicAnd_blockPii__iAtomicAnd_block_Z16atomicAnd_systemPii__iAtomicAnd_system_Z15atomicAnd_blockPxx__llAtomicAnd_block_Z16atomicAnd_systemPxx__llAtomicAnd_system_Z15atomicAnd_blockPjj__uAtomicAnd_block_Z16atomicAnd_systemPjj__uAtomicAnd_system_Z15atomicAnd_blockPyy__ullAtomicAnd_block_Z16atomicAnd_systemPyy__ullAtomicAnd_system_Z14atomicOr_blockPii__iAtomicOr_block_Z15atomicOr_systemPii__iAtomicOr_system_Z14atomicOr_blockPxx__llAtomicOr_block_Z15atomicOr_systemPxx__llAtomicOr_system_Z14atomicOr_blockPjj__uAtomicOr_block_Z15atomicOr_systemPjj__uAtomicOr_system_Z14atomicOr_blockPyy__ullAtomicOr_block_Z15atomicOr_systemPyy__ullAtomicOr_system_Z15atomicXor_blockPii__iAtomicXor_block_Z16atomicXor_systemPii__iAtomicXor_system_Z15atomicXor_blockPxx__llAtomicXor_block_Z16atomicXor_systemPxx__llAtomicXor_system_Z15atomicXor_blockPjj__uAtomicXor_block_Z16atomicXor_systemPjj__uAtomicXor_system_Z15atomicXor_blockPyy__ullAtomicXor_block_Z16atomicXor_systemPyy__ullAtomicXor_system_Z6ballotb__ballot_Z17syncthreads_countb__syncthreads_count_Z15syncthreads_andb__syncthreads_and_Z14syncthreads_orb__syncthreads_or_Z10__isGlobalPKvllvm.nvvm.isspacep.global_Z10__isSharedPKvllvm.nvvm.isspacep.shared_Z12__isConstantPKvllvm.nvvm.isspacep.const_Z9__isLocalPKvllvm.nvvm.isspacep.local_Z16__isGridConstantPKvllvm.nvvm.isspacep.grid_const_Z24__cvta_generic_to_globalPKv_Z24__cvta_generic_to_sharedPKv_Z26__cvta_generic_to_constantPKv_Z23__cvta_generic_to_localPKv_Z24__cvta_global_to_genericm_Z24__cvta_shared_to_genericm_Z26__cvta_constant_to_genericm_Z23__cvta_local_to_genericm_Z31__cvta_generic_to_grid_constantPKv_Z31__cvta_grid_constant_to_genericm_Z5__fnsjjillvm.nvvm.fns_Z14__barrier_syncjllvm.nvvm.barrier.sync_Z20__barrier_sync_countjjllvm.nvvm.barrier.sync.cnt_Z10__syncwarpjllvm.nvvm.bar.warp.sync_Z10__all_syncjillvm.nvvm.vote.sync_Z10__any_syncji_Z10__uni_syncji_Z13__ballot_syncji_Z12__activemaskv_Z11__shfl_syncjiiillvm.nvvm.shfl.sync.i32_Z11__shfl_syncjjii_Z14__shfl_up_syncjiji_Z14__shfl_up_syncjjji_Z16__shfl_down_syncjiji_Z16__shfl_down_syncjjji_Z15__shfl_xor_syncjiii_Z15__shfl_xor_syncjjii_Z11__shfl_syncjfii__float_as_int__int_as_float_Z14__shfl_up_syncjfji_Z16__shfl_down_syncjfji_Z15__shfl_xor_syncjfii_Z11__shfl_syncjxii_Z11__shfl_syncjyii_Z14__shfl_up_syncjxji_Z14__shfl_up_syncjyji_Z16__shfl_down_syncjxji_Z16__shfl_down_syncjyji_Z15__shfl_xor_syncjxii_Z15__shfl_xor_syncjyii_Z11__shfl_syncjdii_Z14__shfl_up_syncjdji_Z16__shfl_down_syncjdji_Z15__shfl_xor_syncjdii_Z11__shfl_syncjlii_Z11__shfl_syncjmii_Z14__shfl_up_syncjlji_Z14__shfl_up_syncjmji_Z16__shfl_down_syncjlji_Z16__shfl_down_syncjmji_Z15__shfl_xor_syncjlii_Z15__shfl_xor_syncjmii_Z5__ldgPKl_Z5__ldgPKm_Z5__ldgPKc_Z5__ldgPKa_Z5__ldgPKs_Z5__ldgPKi_Z5__ldgPKx_Z5__ldgPK5char2_Z5__ldgPK5char4_Z5__ldgPK6short2_Z5__ldgPK6short4_Z5__ldgPK4int2_Z5__ldgPK4int4_Z5__ldgPK9longlong2_Z5__ldgPKh_Z5__ldgPKt_Z5__ldgPKj_Z5__ldgPKy_Z5__ldgPK6uchar2_Z5__ldgPK6uchar4_Z5__ldgPK7ushort2_Z5__ldgPK7ushort4_Z5__ldgPK5uint2_Z5__ldgPK5uint4_Z5__ldgPK10ulonglong2_Z5__ldgPKf_Z5__ldgPKd_Z5__ldgPK6float2_Z5__ldgPK6float4_Z5__ldgPK7double2_Z6__ldcgPKl_Z6__ldcgPKm_Z6__ldcgPKc_Z6__ldcgPKa_Z6__ldcgPKs_Z6__ldcgPKi_Z6__ldcgPKx_Z6__ldcgPK5char2_Z6__ldcgPK5char4_Z6__ldcgPK6short2_Z6__ldcgPK6short4_Z6__ldcgPK4int2_Z6__ldcgPK4int4_Z6__ldcgPK9longlong2_Z6__ldcgPKh_Z6__ldcgPKt_Z6__ldcgPKj_Z6__ldcgPKy_Z6__ldcgPK6uchar2_Z6__ldcgPK6uchar4_Z6__ldcgPK7ushort2_Z6__ldcgPK7ushort4_Z6__ldcgPK5uint2_Z6__ldcgPK5uint4_Z6__ldcgPK10ulonglong2_Z6__ldcgPKf_Z6__ldcgPKd_Z6__ldcgPK6float2_Z6__ldcgPK6float4_Z6__ldcgPK7double2_Z6__ldcaPKl_Z6__ldcaPKm_Z6__ldcaPKc_Z6__ldcaPKa_Z6__ldcaPKs_Z6__ldcaPKi_Z6__ldcaPKx_Z6__ldcaPK5char2_Z6__ldcaPK5char4_Z6__ldcaPK6short2_Z6__ldcaPK6short4_Z6__ldcaPK4int2_Z6__ldcaPK4int4_Z6__ldcaPK9longlong2_Z6__ldcaPKh_Z6__ldcaPKt_Z6__ldcaPKj_Z6__ldcaPKy_Z6__ldcaPK6uchar2_Z6__ldcaPK6uchar4_Z6__ldcaPK7ushort2_Z6__ldcaPK7ushort4_Z6__ldcaPK5uint2_Z6__ldcaPK5uint4_Z6__ldcaPK10ulonglong2_Z6__ldcaPKf_Z6__ldcaPKd_Z6__ldcaPK6float2_Z6__ldcaPK6float4_Z6__ldcaPK7double2_Z6__ldcsPKl_Z6__ldcsPKm_Z6__ldcsPKc_Z6__ldcsPKa_Z6__ldcsPKs_Z6__ldcsPKi_Z6__ldcsPKx_Z6__ldcsPK5char2_Z6__ldcsPK5char4_Z6__ldcsPK6short2_Z6__ldcsPK6short4_Z6__ldcsPK4int2_Z6__ldcsPK4int4_Z6__ldcsPK9longlong2_Z6__ldcsPKh_Z6__ldcsPKt_Z6__ldcsPKj_Z6__ldcsPKy_Z6__ldcsPK6uchar2_Z6__ldcsPK6uchar4_Z6__ldcsPK7ushort2_Z6__ldcsPK7ushort4_Z6__ldcsPK5uint2_Z6__ldcsPK5uint4_Z6__ldcsPK10ulonglong2_Z6__ldcsPKf_Z6__ldcsPKd_Z6__ldcsPK6float2_Z6__ldcsPK6float4_Z6__ldcsPK7double2_Z6__ldluPKl_Z6__ldluPKm_Z6__ldluPKc_Z6__ldluPKa_Z6__ldluPKs_Z6__ldluPKi_Z6__ldluPKx_Z6__ldluPK5char2_Z6__ldluPK5char4_Z6__ldluPK6short2_Z6__ldluPK6short4_Z6__ldluPK4int2_Z6__ldluPK4int4_Z6__ldluPK9longlong2_Z6__ldluPKh_Z6__ldluPKt_Z6__ldluPKj_Z6__ldluPKy_Z6__ldluPK6uchar2_Z6__ldluPK6uchar4_Z6__ldluPK7ushort2_Z6__ldluPK7ushort4_Z6__ldluPK5uint2_Z6__ldluPK5uint4_Z6__ldluPK10ulonglong2_Z6__ldluPKf_Z6__ldluPKd_Z6__ldluPK6float2_Z6__ldluPK6float4_Z6__ldluPK7double2_Z6__ldcvPKl_Z6__ldcvPKm_Z6__ldcvPKc_Z6__ldcvPKa_Z6__ldcvPKs_Z6__ldcvPKi_Z6__ldcvPKx_Z6__ldcvPK5char2_Z6__ldcvPK5char4_Z6__ldcvPK6short2_Z6__ldcvPK6short4_Z6__ldcvPK4int2_Z6__ldcvPK4int4_Z6__ldcvPK9longlong2_Z6__ldcvPKh_Z6__ldcvPKt_Z6__ldcvPKj_Z6__ldcvPKy_Z6__ldcvPK6uchar2_Z6__ldcvPK6uchar4_Z6__ldcvPK7ushort2_Z6__ldcvPK7ushort4_Z6__ldcvPK5uint2_Z6__ldcvPK5uint4_Z6__ldcvPK10ulonglong2_Z6__ldcvPKf_Z6__ldcvPKd_Z6__ldcvPK6float2_Z6__ldcvPK6float4_Z6__ldcvPK7double2_Z6__stwbPll_Z6__stwbPmm_Z6__stwbPcc_Z6__stwbPaa_Z6__stwbPss_Z6__stwbPii_Z6__stwbPxx_Z6__stwbP5char2S__Z6__stwbP5char4S__Z6__stwbP6short2S__Z6__stwbP6short4S__Z6__stwbP4int2S__Z6__stwbP4int4S__Z6__stwbP9longlong2S__Z6__stwbPhh_Z6__stwbPtt_Z6__stwbPjj_Z6__stwbPyy_Z6__stwbP6uchar2S__Z6__stwbP6uchar4S__Z6__stwbP7ushort2S__Z6__stwbP7ushort4S__Z6__stwbP5uint2S__Z6__stwbP5uint4S__Z6__stwbP10ulonglong2S__Z6__stwbPff_Z6__stwbPdd_Z6__stwbP6float2S__Z6__stwbP6float4S__Z6__stwbP7double2S__Z6__stcgPll_Z6__stcgPmm_Z6__stcgPcc_Z6__stcgPaa_Z6__stcgPss_Z6__stcgPii_Z6__stcgPxx_Z6__stcgP5char2S__Z6__stcgP5char4S__Z6__stcgP6short2S__Z6__stcgP6short4S__Z6__stcgP4int2S__Z6__stcgP4int4S__Z6__stcgP9longlong2S__Z6__stcgPhh_Z6__stcgPtt_Z6__stcgPjj_Z6__stcgPyy_Z6__stcgP6uchar2S__Z6__stcgP6uchar4S__Z6__stcgP7ushort2S__Z6__stcgP7ushort4S__Z6__stcgP5uint2S__Z6__stcgP5uint4S__Z6__stcgP10ulonglong2S__Z6__stcgPff_Z6__stcgPdd_Z6__stcgP6float2S__Z6__stcgP6float4S__Z6__stcgP7double2S__Z6__stcsPll_Z6__stcsPmm_Z6__stcsPcc_Z6__stcsPaa_Z6__stcsPss_Z6__stcsPii_Z6__stcsPxx_Z6__stcsP5char2S__Z6__stcsP5char4S__Z6__stcsP6short2S__Z6__stcsP6short4S__Z6__stcsP4int2S__Z6__stcsP4int4S__Z6__stcsP9longlong2S__Z6__stcsPhh_Z6__stcsPtt_Z6__stcsPjj_Z6__stcsPyy_Z6__stcsP6uchar2S__Z6__stcsP6uchar4S__Z6__stcsP7ushort2S__Z6__stcsP7ushort4S__Z6__stcsP5uint2S__Z6__stcsP5uint4S__Z6__stcsP10ulonglong2S__Z6__stcsPff_Z6__stcsPdd_Z6__stcsP6float2S__Z6__stcsP6float4S__Z6__stcsP7double2S__Z6__stwtPll_Z6__stwtPmm_Z6__stwtPcc_Z6__stwtPaa_Z6__stwtPss_Z6__stwtPii_Z6__stwtPxx_Z6__stwtP5char2S__Z6__stwtP5char4S__Z6__stwtP6short2S__Z6__stwtP6short4S__Z6__stwtP4int2S__Z6__stwtP4int4S__Z6__stwtP9longlong2S__Z6__stwtPhh_Z6__stwtPtt_Z6__stwtPjj_Z6__stwtPyy_Z6__stwtP6uchar2S__Z6__stwtP6uchar4S__Z6__stwtP7ushort2S__Z6__stwtP7ushort4S__Z6__stwtP5uint2S__Z6__stwtP5uint4S__Z6__stwtP10ulonglong2S__Z6__stwtPff_Z6__stwtPdd_Z6__stwtP6float2S__Z6__stwtP6float4S__Z6__stwtP7double2S__Z15__funnelshift_ljjj_Z16__funnelshift_lcjjj_Z15__funnelshift_rjjj_Z16__funnelshift_rcjjj_Z16__match_any_syncjjllvm.nvvm.match.any.sync.i32_Z16__match_any_syncji_Z16__match_any_syncjmllvm.nvvm.match.any.sync.i64_Z16__match_any_syncjl_Z16__match_any_syncjy_Z16__match_any_syncjx_Z16__match_any_syncjf__float_as_uint_Z16__match_any_syncjd__double_as_longlong_Z16__match_all_syncjjPillvm.nvvm.match.all.sync.i32_Z16__match_all_syncjiPi_Z16__match_all_syncjmPillvm.nvvm.match.all.sync.i64_Z16__match_all_syncjlPi_Z16__match_all_syncjyPi_Z16__match_all_syncjxPi_Z16__match_all_syncjfPi_Z16__match_all_syncjdPi_Z11__nanosleepj_Z9atomicCASPttt__usAtomicCAS_Z17__reduce_add_syncjj__reduce_add_sync_unsigned_impl_Z17__reduce_min_syncjj__reduce_min_sync_unsigned_impl_Z17__reduce_max_syncjj__reduce_max_sync_unsigned_impl_Z17__reduce_add_syncji__reduce_add_sync_signed_impl_Z17__reduce_min_syncji__reduce_min_sync_signed_impl_Z17__reduce_max_syncji__reduce_max_sync_signed_impl_Z17__reduce_and_syncjj__reduce_and_sync_unsigned_impl_Z16__reduce_or_syncjj__reduce_or_sync_unsigned_impl_Z17__reduce_xor_syncjj__reduce_xor_sync_unsigned_impl_Z13__isCtaSharedPKv_Z17__isClusterSharedPKvllvm.nvvm.isspacep.cluster.shared_Z25__cluster_map_shared_rankPKvjllvm.nvvm.cluster.set.rank_Z27__cluster_query_shared_rankPKvllvm.nvvm.cluster.get.rank_Z30__cluster_map_shared_multicastPKvj_Z23__clusterDimIsSpecifiedvllvm.nvvm.read.cluster.info.i1_Z12__clusterDimvllvm.nvvm.read.cluster.info.i32_Z25__clusterRelativeBlockIdxv_Z26__clusterGridDimInClustersv_Z12__clusterIdxv_Z26__clusterRelativeBlockRankv_Z21__clusterSizeInBlocksv_Z24__cluster_barrier_arrivevllvm.nvvm.cluster.barrier_Z32__cluster_barrier_arrive_relaxedv_Z22__cluster_barrier_waitv_Z21__threadfence_clustervllvm.nvvm.membar_Z9atomicAddP6float2S___f2AtomicAdd_Z15atomicAdd_blockP6float2S___f2AtomicAdd_block_Z16atomicAdd_systemP6float2S___f2AtomicAdd_system_Z9atomicAddP6float4S___f4AtomicAdd_Z15atomicAdd_blockP6float4S___f4AtomicAdd_block_Z16atomicAdd_systemP6float4S___f4AtomicAdd_system7.0.1nvptx64-nvidia-gpulibsmoduleOutput;������̲���ܲ���첗�����, ���D���\,���t<����L����\����l����|����������������4����L̳��d����|zRx �$谗�FJ w�?;*3$"D౗�\ر��tб���ȱ������������������������������4����L����d����|x����p����h����`���������� ` �]��' � h �]��]����o��� M `��� ���ox���o���o����o���oF���o�]�.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_d.gnu.version_r.rela.dyn.init.plt.got.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.plt.bss ��$���o���( ��X0��M8���oFF2E���oxx0T���o�� c���m� � �� � s� � |� � ��h h �� � �Jh �XhXh���Xh�Xh���]��]h��]��]h��]��]h��]��]h��]��]hw�_��_h(�`�`h�`�`h`h�
Memory