jitify icon indicating copy to clipboard operation
jitify copied to clipboard

Jitify2 parsing and preprocessing overhaul

Open benbarsdell opened this issue 2 years ago • 13 comments

  • Replaces C++ lexing/parsing/patching code with a proper lexer implementation, which significantly improves robustness and maintainability.
  • Replaces minification logic with robust token-based minification.
  • Replaces preprocessing logic with a new approach that uses custom parsing to find include directives. This only requires invoking NVRTC (and only its preprocessor) once per preprocess, which speeds up preprocessing by 50x in some cases.
  • Fixes include directory handling. Relative include paths are now handled robustly, and there is no longer any ambiguity between external and built-in headers. Note that relative paths (including in -I options) now start from the current executable directory instead of the current working directory.
  • These changes should be almost completely backwards compatible.

Fixes #90 and #107.

(This PR requires #128 and #129 to be merged first).

benbarsdell avatar Nov 13 '23 01:11 benbarsdell

Fixes https://github.com/NVIDIA/jitify/issues/90

#90 refers to Jitify1.

I take it this is in response to the performance regression between CUDA 12.1 and 12.2 (in a test case I've been investigating calls to nvrtcCompileProgram() have jumped from 20 to 246, increasing RTC time by 10x.

I've not looked significantly into Jitify2 since I created #90, I presume it's now worth me looking more seriously into the viability of migrating our code to use Jitify2.

Robadob avatar Nov 15 '23 09:11 Robadob

@Robadob This is actually not in response to that issue; I only just became aware of it and do not know the root cause (possibly some header hierarchy changed and became pathological for Jitify).

All significant new work is expected to be on Jitify2, so I would encourage you to migrate, and would be happy to answer any questions that come up.

benbarsdell avatar Nov 15 '23 10:11 benbarsdell

This is actually not in response to that issue; I only just became aware of it and do not know the root cause (possibly some header hierarchy changed and became pathological for Jitify).

Fair, the timing must just be a coincidence. I assume the same re: header-hierarchy, but I haven't looked into it too deeply beyond tracking the number of calls to nvrtc compile program.

I would encourage you to migrate, and would be happy to answer any questions that come up.

I'm now planning to explore the migration today (having discussed it with my team), will create a new issue if I have any problems.

Edit: Have managed to migrate to jitify2 branch, which works with CUDA 12.0 on both Windows/Linux. Not yet implemented serialisation/deserialisation (it's now earlier than I expected, need to check the impact that has on cache size and time from cache). Couldn't get it to work with CUDA 12.3 (on Linux), but not yet tried misc fixes branch.

Robadob avatar Nov 15 '23 10:11 Robadob

@Robadob Thanks for the help with this. I've pushed fixes for the issues you identified as well as some more that I found with manylinux2014.

benbarsdell avatar Nov 21 '23 10:11 benbarsdell

Visual Studio 2022 (CUDA 12.0) Still got the compilation warnings (though I think they're present in jitify2 branch)

Log
Warning:      1>D:\a\FLAMEGPU2\FLAMEGPU2\build\_deps\jitify-src\jitify\jitify2.hpp(3201): warning C4701: potentially uninitialized local variable 'cc_major' used [D:\a\FLAMEGPU2\FLAMEGPU2\build\FLAMEGPU\flamegpu.vcxproj]
Warning:      1>D:\a\FLAMEGPU2\FLAMEGPU2\build\_deps\jitify-src\jitify\jitify2.hpp(3201): warning C4701: potentially uninitialized local variable 'cc_minor' used [D:\a\FLAMEGPU2\FLAMEGPU2\build\FLAMEGPU\flamegpu.vcxproj]
3>C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\algorithm(3456): warning C4244: '=': conversion from 'int' to 'char', possible loss of data
3>C:\Users\Robert\fgpu2\fgpu2\build\_deps\jitify-src\jitify/jitify2.hpp(2362): note: see reference to function template instantiation '_OutIt std::transform<std::_String_iterator<std::_String_val<std::_Simple_types<_Elem>>>,std::_String_iterator<std::_String_val<std::_Simple_types<_Elem>>>,jitify2::detail::is_true_value::<lambda_1c4b3a884b5a8315db7fcb8afefb2bc5>>(const _InIt,const _InIt,_OutIt,_Fn)' being compiled
3>        with
3>        [
3>            _OutIt=std::_String_iterator<std::_String_val<std::_Simple_types<char>>>,
3>            _Elem=char,
3>            _InIt=std::_String_iterator<std::_String_val<std::_Simple_types<char>>>,
3>            _Fn=jitify2::detail::is_true_value::<lambda_1c4b3a884b5a8315db7fcb8afefb2bc5>
3>        ]

jitify2::Program::preprocess() fails to find stdlib.h included by cuda.h.

Log
Compilation failed: NVRTC_ERROR_COMPILATION
Compiler options: "-DFLAMEGPU_CURAND_Philox4_32_10 --device-debug -DDEBUG --define-macro=FLAMEGPU_SEATBELTS=1 --pre-include=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include//cuda.h -include=jitify_preinclude.h -std=c++11 -default-device -no-source-include -arch=compute_86 -DJITIFY_PREPROCESS_ONLY -DJITIFY_USED_HEADER_WARNINGS"
Found #include "flamegpu/runtime/DeviceAPI.cuh" from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/outputdata_program:1 at:
  C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/DeviceAPI.cuh
Found #include "flamegpu/runtime/messaging/MessageNone/MessageNoneDevice.cuh" from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/outputdata_program:2 at:
  C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/messaging/MessageNone/MessageNoneDevice.cuh
Found #include "flamegpu/runtime/messaging/MessageSpatial3D/MessageSpatial3DDevice.cuh" from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/outputdata_program:3 at:
  C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/messaging/MessageSpatial3D/MessageSpatial3DDevice.cuh
Found #include <cstring> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/exception/FLAMEGPUDeviceException_device.cuh:7 at:
  __jitify_builtin/cstring
Found #include <string> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/exception/FLAMEGPUDeviceException.cuh:4 at:
  __jitify_builtin/string
Found #include <type_traits> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/exception/FLAMEGPUDeviceException.cuh:5 at:
  __jitify_builtin/type_traits
Found #include <string> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/detail/curve/Curve.cuh:5 at:
  __jitify_builtin/string
Found #include <cassert> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/DeviceAPI.cuh:5 at:
  __jitify_builtin/cassert
Found #include <cstdint> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/DeviceAPI.cuh:6 at:
  __jitify_builtin/cstdint
Found #include <limits> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/DeviceAPI.cuh:7 at:
  __jitify_builtin/limits
Found #include <cstdint> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/detail/StaticAssert.h:4 at:
  __jitify_builtin/cstdint
Found #include <string> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/messaging/MessageBucket.h:6 at:
  __jitify_builtin/string
Found #include <limits> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/random/AgentRandom.cuh:4 at:
  __jitify_builtin/limits
Found #include <string> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/environment/DeviceEnvironment.cuh:5 at:
  __jitify_builtin/string
Found #include <cassert> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/environment/DeviceEnvironment.cuh:6 at:
  __jitify_builtin/cassert
Found #include <cstdint> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/environment/DeviceMacroProperty.cuh:4 at:
  __jitify_builtin/cstdint
Found #include <limits> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/environment/DeviceMacroProperty.cuh:5 at:
  __jitify_builtin/limits
Found #include <algorithm> from C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/flamegpu/runtime/environment/DeviceMacroProperty.cuh:6 at:
  __jitify_builtin/algorithm
Found #include <climits> from __jitify_builtin/cstdint:3 at:
  __jitify_builtin/climits
Found #include <cfloat> from __jitify_builtin/limits:3 at:
  __jitify_builtin/cfloat
Found #include <climits> from __jitify_builtin/limits:4 at:
  __jitify_builtin/climits
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include//cuda.h(55): catastrophic error: could not open source file "stdlib.h" (no directories in search list)

1 catastrophic error detected in the compilation of "outputdata_program".
Compilation terminated.

gcc (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0 (CUDA 12.3) jitify2::Program::preprocess() fails to find dynamic/curve_rtc_dynamic.h. This is a dynamic header we pass to the constructor of jitify2::Program

    // get the dynamically generated header from curve rtc
    headers.emplace("dynamic/curve_rtc_dynamic.h", dynamic_header);

    getKnownHeaders(flamegpu_include_dir, headers);  // Temp hack that prespecifies known headers

    // jitify to create program (with compilation settings)
    const std::string program_name = func_name + "_program";  // Does this name actually matter?
    jitify2::PreprocessedProgram program = jitify2::Program(program_name, kernel_src, headers)->preprocess(options);
    if (!program.ok()) {
Log
Compilation failed: NVRTC_ERROR_COMPILATION
Compiler options: "-DFLAMEGPU_CURAND_Philox4_32_10 --device-debug -DDEBUG --std=c++17 --define-macro=FLAMEGPU_SEATBELTS=1 --pre-include=/usr/local/cuda-12.3/include//cuda.h -include=jitify_preinclude.h -default-device -no-source-include -arch=compute_86 -DJITIFY_PREPROCESS_ONLY -DJITIFY_USED_HEADER_WARNINGS"
Found #include "flamegpu/runtime/DeviceAPI.cuh" from /home/rob/FLAMEGPU2/build/bin/Debug/outputdata_program:1 at:
  /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/DeviceAPI.cuh
Found #include "flamegpu/runtime/messaging/MessageNone/MessageNoneDevice.cuh" from /home/rob/FLAMEGPU2/build/bin/Debug/outputdata_program:2 at:
  /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/messaging/MessageNone/MessageNoneDevice.cuh
Found #include "flamegpu/runtime/messaging/MessageSpatial3D/MessageSpatial3DDevice.cuh" from /home/rob/FLAMEGPU2/build/bin/Debug/outputdata_program:3 at:
  /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/messaging/MessageSpatial3D/MessageSpatial3DDevice.cuh
Found #include <cstdint> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/detail/StaticAssert.h:4 at:
  __jitify_builtin/cstdint
Found #include <cstdint> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/environment/DeviceMacroProperty.cuh:4 at:
  __jitify_builtin/cstdint
Found #include <limits> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/environment/DeviceMacroProperty.cuh:5 at:
  __jitify_builtin/limits
Found #include <algorithm> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/environment/DeviceMacroProperty.cuh:6 at:
  __jitify_builtin/algorithm
Found #include <cuda_runtime.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/environment/DeviceMacroProperty.cuh:14 at:
  /usr/local/cuda-12.3/include/cuda_runtime.h
Found #include <cassert> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/DeviceAPI.cuh:5 at:
  __jitify_builtin/cassert
Found #include <cstdint> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/DeviceAPI.cuh:6 at:
  __jitify_builtin/cstdint
Found #include <limits> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/DeviceAPI.cuh:7 at:
  __jitify_builtin/limits
Found #include <driver_types.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/simulation/detail/CUDAScanCompaction.h:3 at:
  /usr/local/cuda-12.3/include/driver_types.h
Found #include <cuda_runtime.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/util/dstring.h:4 at:
  /usr/local/cuda-12.3/include/cuda_runtime.h
Found #include <cuda_runtime.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/exception/FLAMEGPUDeviceException_device.cuh:4 at:
  /usr/local/cuda-12.3/include/cuda_runtime.h
Found #include <device_launch_parameters.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/exception/FLAMEGPUDeviceException_device.cuh:5 at:
  /usr/local/cuda-12.3/include/device_launch_parameters.h
Found #include <cstring> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/exception/FLAMEGPUDeviceException_device.cuh:7 at:
  __jitify_builtin/cstring
Found #include <curand_kernel.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/detail/curand.cuh:8 at:
  /usr/local/cuda-12.3/include/curand_kernel.h
Found #include <string> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/detail/curve/Curve.cuh:5 at:
  __jitify_builtin/string
Found #include <cuda_runtime.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/AgentFunctionCondition.cuh:4 at:
  /usr/local/cuda-12.3/include/cuda_runtime.h
Found #include <device_launch_parameters.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/AgentFunctionCondition.cuh:5 at:
  /usr/local/cuda-12.3/include/device_launch_parameters.h
Found #include <cuda_runtime.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/AgentFunction.cuh:4 at:
  /usr/local/cuda-12.3/include/cuda_runtime.h
Found #include <device_launch_parameters.h> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/AgentFunction.cuh:5 at:
  /usr/local/cuda-12.3/include/device_launch_parameters.h
Found #include <string> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/exception/FLAMEGPUDeviceException.cuh:4 at:
  __jitify_builtin/string
Found #include <type_traits> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/exception/FLAMEGPUDeviceException.cuh:5 at:
  __jitify_builtin/type_traits
Found #include <string> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/messaging/MessageBucket.h:6 at:
  __jitify_builtin/string
Found #include <string> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/environment/DeviceEnvironment.cuh:5 at:
  __jitify_builtin/string
Found #include <cassert> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/environment/DeviceEnvironment.cuh:6 at:
  __jitify_builtin/cassert
Found #include <limits> from /home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime/random/AgentRandom.cuh:4 at:
  __jitify_builtin/limits
Found #include <climits> from __jitify_builtin/cstdint:3 at:
  __jitify_builtin/climits
Found #include <cfloat> from __jitify_builtin/limits:3 at:
  __jitify_builtin/cfloat
Found #include <climits> from __jitify_builtin/limits:4 at:
  __jitify_builtin/climits
Found #include "crt/host_config.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:82 at:
  /usr/local/cuda-12.3/include/crt/host_config.h
Found #include "builtin_types.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:90 at:
  /usr/local/cuda-12.3/include/builtin_types.h
Found #include "library_types.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:91 at:
  /usr/local/cuda-12.3/include/library_types.h
Found #include "channel_descriptor.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:94 at:
  /usr/local/cuda-12.3/include/channel_descriptor.h
Found #include "cuda_runtime_api.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:95 at:
  /usr/local/cuda-12.3/include/cuda_runtime_api.h
Found #include "driver_functions.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:96 at:
  /usr/local/cuda-12.3/include/driver_functions.h
Found #include "crt/host_defines.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:99 at:
  /usr/local/cuda-12.3/include/crt/host_defines.h
Found #include "vector_functions.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:105 at:
  /usr/local/cuda-12.3/include/vector_functions.h
Found #include "crt/device_functions.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:111 at:
  /usr/local/cuda-12.3/include/crt/device_functions.h
Found #include "crt/common_functions.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:112 at:
  /usr/local/cuda-12.3/include/crt/common_functions.h
Found #include "device_launch_parameters.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:113 at:
  /usr/local/cuda-12.3/include/device_launch_parameters.h
Found #include "crt/common_functions.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:117 at:
  /usr/local/cuda-12.3/include/crt/common_functions.h
Found #include "crt/device_functions.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:118 at:
  /usr/local/cuda-12.3/include/crt/device_functions.h
Found #include "device_launch_parameters.h" from /usr/local/cuda-12.3/include/cuda_runtime.h:119 at:
  /usr/local/cuda-12.3/include/device_launch_parameters.h
Found #include <functional> from /usr/local/cuda-12.3/include/cuda_runtime.h:122 at:
  __jitify_builtin/functional
Found #include <utility> from /usr/local/cuda-12.3/include/cuda_runtime.h:123 at:
  __jitify_builtin/utility
Found #include <utility> from /usr/local/cuda-12.3/include/cuda_runtime.h:148 at:
  __jitify_builtin/utility
Found #include "crt/host_defines.h" from /usr/local/cuda-12.3/include/driver_types.h:59 at:
  /usr/local/cuda-12.3/include/crt/host_defines.h
Found #include "vector_types.h" from /usr/local/cuda-12.3/include/driver_types.h:61 at:
  /usr/local/cuda-12.3/include/vector_types.h
Found #include <limits.h> from /usr/local/cuda-12.3/include/driver_types.h:81 at:
  __jitify_builtin/limits.h
Found #include <stddef.h> from /usr/local/cuda-12.3/include/driver_types.h:82 at:
  __jitify_builtin/stddef.h
Found #include "vector_types.h" from /usr/local/cuda-12.3/include/device_launch_parameters.h:53 at:
  /usr/local/cuda-12.3/include/vector_types.h
Found #include <nv/target> from /usr/local/cuda-12.3/include/curand_kernel.h:73 at:
  /usr/local/cuda-12.3/include/nv/target
Found #include <cuda/std/type_traits> from /usr/local/cuda-12.3/include/curand_kernel.h:82 at:
  /usr/local/cuda-12.3/include/cuda/std/type_traits
Found #include <type_traits> from /usr/local/cuda-12.3/include/curand_kernel.h:85 at:
  __jitify_builtin/type_traits
Found #include <math.h> from /usr/local/cuda-12.3/include/curand_kernel.h:106 at:
  __jitify_builtin/math.h
Found #include "curand.h" from /usr/local/cuda-12.3/include/curand_kernel.h:109 at:
  /usr/local/cuda-12.3/include/curand.h
Found #include "curand_discrete.h" from /usr/local/cuda-12.3/include/curand_kernel.h:110 at:
  /usr/local/cuda-12.3/include/curand_discrete.h
Found #include "curand_precalc.h" from /usr/local/cuda-12.3/include/curand_kernel.h:111 at:
  /usr/local/cuda-12.3/include/curand_precalc.h
Found #include "curand_mrg32k3a.h" from /usr/local/cuda-12.3/include/curand_kernel.h:112 at:
  /usr/local/cuda-12.3/include/curand_mrg32k3a.h
Found #include "curand_mtgp32_kernel.h" from /usr/local/cuda-12.3/include/curand_kernel.h:113 at:
  /usr/local/cuda-12.3/include/curand_mtgp32_kernel.h
Found #include "curand_philox4x32_x.h" from /usr/local/cuda-12.3/include/curand_kernel.h:114 at:
  /usr/local/cuda-12.3/include/curand_philox4x32_x.h
Found #include "curand_globals.h" from /usr/local/cuda-12.3/include/curand_kernel.h:115 at:
  /usr/local/cuda-12.3/include/curand_globals.h
Found #include "curand_uniform.h" from /usr/local/cuda-12.3/include/curand_kernel.h:1593 at:
  /usr/local/cuda-12.3/include/curand_uniform.h
Found #include "curand_normal.h" from /usr/local/cuda-12.3/include/curand_kernel.h:1594 at:
  /usr/local/cuda-12.3/include/curand_normal.h
Found #include "curand_lognormal.h" from /usr/local/cuda-12.3/include/curand_kernel.h:1595 at:
  /usr/local/cuda-12.3/include/curand_lognormal.h
Found #include "curand_poisson.h" from /usr/local/cuda-12.3/include/curand_kernel.h:1596 at:
  /usr/local/cuda-12.3/include/curand_poisson.h
Found #include "curand_discrete2.h" from /usr/local/cuda-12.3/include/curand_kernel.h:1597 at:
  /usr/local/cuda-12.3/include/curand_discrete2.h
Found #include <cstdarg> from /usr/local/cuda-12.3/include/crt/host_config.h:259 at:
  __jitify_builtin/cstdarg
Found #include "device_types.h" from /usr/local/cuda-12.3/include/builtin_types.h:56 at:
  /usr/local/cuda-12.3/include/device_types.h
Found #include "driver_types.h" from /usr/local/cuda-12.3/include/builtin_types.h:59 at:
  /usr/local/cuda-12.3/include/driver_types.h
Found #include "surface_types.h" from /usr/local/cuda-12.3/include/builtin_types.h:62 at:
  /usr/local/cuda-12.3/include/surface_types.h
Found #include "texture_types.h" from /usr/local/cuda-12.3/include/builtin_types.h:63 at:
  /usr/local/cuda-12.3/include/texture_types.h
Found #include "vector_types.h" from /usr/local/cuda-12.3/include/builtin_types.h:64 at:
  /usr/local/cuda-12.3/include/vector_types.h
Found #include "cuda_runtime_api.h" from /usr/local/cuda-12.3/include/channel_descriptor.h:61 at:
  /usr/local/cuda-12.3/include/cuda_runtime_api.h
Found #include "crt/host_defines.h" from /usr/local/cuda-12.3/include/cuda_runtime_api.h:148 at:
  /usr/local/cuda-12.3/include/crt/host_defines.h
Found #include "cuda_device_runtime_api.h" from /usr/local/cuda-12.3/include/cuda_runtime_api.h:153 at:
  /usr/local/cuda-12.3/include/cuda_device_runtime_api.h
Found #include "crt/host_defines.h" from /usr/local/cuda-12.3/include/driver_functions.h:54 at:
  /usr/local/cuda-12.3/include/crt/host_defines.h
Found #include "driver_types.h" from /usr/local/cuda-12.3/include/driver_functions.h:55 at:
  /usr/local/cuda-12.3/include/driver_types.h
Found #include "vector_functions.hpp" from /usr/local/cuda-12.3/include/vector_functions.h:176 at:
  /usr/local/cuda-12.3/include/vector_functions.hpp
Found #include "builtin_types.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:81 at:
  /usr/local/cuda-12.3/include/builtin_types.h
Found #include "device_types.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:82 at:
  /usr/local/cuda-12.3/include/device_types.h
Found #include "host_defines.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:83 at:
  /usr/local/cuda-12.3/include/crt/host_defines.h
Found #include "device_functions.hpp" from /usr/local/cuda-12.3/include/crt/device_functions.h:3617 at:
  /usr/local/cuda-12.3/include/crt/device_functions.hpp
Found #include "device_atomic_functions.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3620 at:
  /usr/local/cuda-12.3/include/device_atomic_functions.h
Found #include "device_double_functions.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3621 at:
  /usr/local/cuda-12.3/include/crt/device_double_functions.h
Found #include "sm_20_atomic_functions.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3622 at:
  /usr/local/cuda-12.3/include/sm_20_atomic_functions.h
Found #include "sm_32_atomic_functions.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3623 at:
  /usr/local/cuda-12.3/include/sm_32_atomic_functions.h
Found #include "sm_35_atomic_functions.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3624 at:
  /usr/local/cuda-12.3/include/sm_35_atomic_functions.h
Found #include "sm_60_atomic_functions.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3625 at:
  /usr/local/cuda-12.3/include/sm_60_atomic_functions.h
Found #include "sm_20_intrinsics.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3626 at:
  /usr/local/cuda-12.3/include/sm_20_intrinsics.h
Found #include "sm_30_intrinsics.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3627 at:
  /usr/local/cuda-12.3/include/sm_30_intrinsics.h
Found #include "sm_32_intrinsics.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3628 at:
  /usr/local/cuda-12.3/include/sm_32_intrinsics.h
Found #include "sm_35_intrinsics.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3629 at:
  /usr/local/cuda-12.3/include/sm_35_intrinsics.h
Found #include "sm_61_intrinsics.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3630 at:
  /usr/local/cuda-12.3/include/sm_61_intrinsics.h
Found #include "sm_70_rt.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3631 at:
  /usr/local/cuda-12.3/include/crt/sm_70_rt.h
Found #include "sm_80_rt.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3632 at:
  /usr/local/cuda-12.3/include/crt/sm_80_rt.h
Found #include "sm_90_rt.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3633 at:
  /usr/local/cuda-12.3/include/crt/sm_90_rt.h
Found #include "texture_indirect_functions.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3634 at:
  /usr/local/cuda-12.3/include/texture_indirect_functions.h
Found #include "surface_indirect_functions.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3635 at:
  /usr/local/cuda-12.3/include/surface_indirect_functions.h
Found #include "cudacc_ext.h" from /usr/local/cuda-12.3/include/crt/device_functions.h:3636 at:
  /usr/local/cuda-12.3/include/crt/cudacc_ext.h
Found #include "builtin_types.h" from /usr/local/cuda-12.3/include/crt/common_functions.h:71 at:
  /usr/local/cuda-12.3/include/builtin_types.h
Found #include "host_defines.h" from /usr/local/cuda-12.3/include/crt/common_functions.h:72 at:
  /usr/local/cuda-12.3/include/crt/host_defines.h
Found #include <string.h> from /usr/local/cuda-12.3/include/crt/common_functions.h:85 at:
  __jitify_builtin/string.h
Found #include <time.h> from /usr/local/cuda-12.3/include/crt/common_functions.h:86 at:
  __jitify_builtin/time.h
Found #include <stdio.h> from /usr/local/cuda-12.3/include/crt/common_functions.h:136 at:
  __jitify_builtin/stdio.h
Found #include <stdlib.h> from /usr/local/cuda-12.3/include/crt/common_functions.h:137 at:
  __jitify_builtin/stdlib.h
Found #include <assert.h> from /usr/local/cuda-12.3/include/crt/common_functions.h:174 at:
  __jitify_builtin/assert.h
Found #include "cuda_device_runtime_api.h" from /usr/local/cuda-12.3/include/crt/common_functions.h:300 at:
  /usr/local/cuda-12.3/include/cuda_device_runtime_api.h
Found #include "math_functions.h" from /usr/local/cuda-12.3/include/crt/common_functions.h:303 at:
  /usr/local/cuda-12.3/include/crt/math_functions.h
Found #include <utility> from __jitify_builtin/functional:5 at:
  __jitify_builtin/utility
Found #include "detail/__target_macros" from /usr/local/cuda-12.3/include/nv/target:201 at:
  /usr/local/cuda-12.3/include/nv/detail/__target_macros
Found #include "detail/__config" from /usr/local/cuda-12.3/include/cuda/std/type_traits:14 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/__config
Found #include "detail/__pragma_push" from /usr/local/cuda-12.3/include/cuda/std/type_traits:16 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/__pragma_push
Found #include "detail/libcxx/include/type_traits" from /usr/local/cuda-12.3/include/cuda/std/type_traits:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits
Found #include "detail/__pragma_pop" from /usr/local/cuda-12.3/include/cuda/std/type_traits:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/__pragma_pop
Found #include <stdlib.h> from /usr/local/cuda-12.3/include/curand_mtgp32_kernel.h:107 at:
  __jitify_builtin/stdlib.h
Found #include <memory.h> from /usr/local/cuda-12.3/include/curand_mtgp32_kernel.h:108 at:
  __jitify_builtin/memory.h
Found #include <string.h> from /usr/local/cuda-12.3/include/curand_mtgp32_kernel.h:109 at:
  __jitify_builtin/string.h
Found #include "curand_mtgp32.h" from /usr/local/cuda-12.3/include/curand_mtgp32_kernel.h:113 at:
  /usr/local/cuda-12.3/include/curand_mtgp32.h
Found #include "curand_normal_static.h" from /usr/local/cuda-12.3/include/curand_normal.h:68 at:
  /usr/local/cuda-12.3/include/curand_normal_static.h
Found #include <stdlib.h> from /usr/local/cuda-12.3/include/cuda_device_runtime_api.h:54 at:
  __jitify_builtin/stdlib.h
Found #include "device_atomic_functions.hpp" from /usr/local/cuda-12.3/include/device_atomic_functions.h:188 at:
  /usr/local/cuda-12.3/include/device_atomic_functions.hpp
Found #include "device_double_functions.hpp" from /usr/local/cuda-12.3/include/crt/device_double_functions.h:1184 at:
  /usr/local/cuda-12.3/include/crt/device_double_functions.hpp
Found #include "sm_20_atomic_functions.hpp" from /usr/local/cuda-12.3/include/sm_20_atomic_functions.h:107 at:
  /usr/local/cuda-12.3/include/sm_20_atomic_functions.hpp
Found #include "sm_32_atomic_functions.hpp" from /usr/local/cuda-12.3/include/sm_32_atomic_functions.h:120 at:
  /usr/local/cuda-12.3/include/sm_32_atomic_functions.hpp
Found #include "sm_32_atomic_functions.h" from /usr/local/cuda-12.3/include/sm_35_atomic_functions.h:56 at:
  /usr/local/cuda-12.3/include/sm_32_atomic_functions.h
Found #include "sm_60_atomic_functions.hpp" from /usr/local/cuda-12.3/include/sm_60_atomic_functions.h:325 at:
  /usr/local/cuda-12.3/include/sm_60_atomic_functions.hpp
Found #include "sm_20_intrinsics.hpp" from /usr/local/cuda-12.3/include/sm_20_intrinsics.h:1564 at:
  /usr/local/cuda-12.3/include/sm_20_intrinsics.hpp
Found #include "sm_30_intrinsics.hpp" from /usr/local/cuda-12.3/include/sm_30_intrinsics.h:233 at:
  /usr/local/cuda-12.3/include/sm_30_intrinsics.hpp
Found #include "sm_32_intrinsics.hpp" from /usr/local/cuda-12.3/include/sm_32_intrinsics.h:512 at:
  /usr/local/cuda-12.3/include/sm_32_intrinsics.hpp
Found #include "sm_61_intrinsics.hpp" from /usr/local/cuda-12.3/include/sm_61_intrinsics.h:235 at:
  /usr/local/cuda-12.3/include/sm_61_intrinsics.hpp
Found #include "sm_70_rt.hpp" from /usr/local/cuda-12.3/include/crt/sm_70_rt.h:126 at:
  /usr/local/cuda-12.3/include/crt/sm_70_rt.hpp
Found #include "sm_80_rt.hpp" from /usr/local/cuda-12.3/include/crt/sm_80_rt.h:154 at:
  /usr/local/cuda-12.3/include/crt/sm_80_rt.hpp
Found #include "sm_90_rt.hpp" from /usr/local/cuda-12.3/include/crt/sm_90_rt.h:250 at:
  /usr/local/cuda-12.3/include/crt/sm_90_rt.hpp
Found #include <cstddef> from __jitify_builtin/stdio.h:2 at:
  __jitify_builtin/cstddef
Found #include <cstddef> from __jitify_builtin/stdlib.h:2 at:
  __jitify_builtin/cstddef
Found #include <cmath> from /usr/local/cuda-12.3/include/crt/math_functions.h:10554 at:
  __jitify_builtin/cmath
Found #include <cstdlib> from /usr/local/cuda-12.3/include/crt/math_functions.h:10555 at:
  __jitify_builtin/cstdlib
Found #include <crt/func_macro.h> from /usr/local/cuda-12.3/include/crt/math_functions.h:11929 at:
  /usr/local/cuda-12.3/include/crt/func_macro.h
Found #include "math_functions.hpp" from /usr/local/cuda-12.3/include/crt/math_functions.h:12201 at:
  /usr/local/cuda-12.3/include/crt/math_functions.hpp
Found #include "__preprocessor" from /usr/local/cuda-12.3/include/nv/detail/__target_macros:14 at:
  /usr/local/cuda-12.3/include/nv/detail/__preprocessor
Found #include "libcxx/include/__config" from /usr/local/cuda-12.3/include/cuda/std/detail/__config:43 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__config
Found #include "libcxx/include/__pragma_push" from /usr/local/cuda-12.3/include/cuda/std/detail/__pragma_push:11 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__pragma_push
Found #include "libcxx/include/__undef_macros" from /usr/local/cuda-12.3/include/cuda/std/detail/__pragma_push:12 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__undef_macros
Found #include "__assert" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:425 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__assert
Found #include "__functional/identity.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:426 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/identity.h
Found #include "__functional/invoke.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:427 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h
Found #include "__memory/addressof.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:428 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__memory/addressof.h
Found #include "__type_traits/add_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:429 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_const.h
Found #include "__type_traits/add_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:430 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_cv.h
Found #include "__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:431 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "__type_traits/add_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:432 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_pointer.h
Found #include "__type_traits/add_rvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:433 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h
Found #include "__type_traits/add_volatile.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:434 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_volatile.h
Found #include "__type_traits/aligned_storage.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:435 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_storage.h
Found #include "__type_traits/aligned_union.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:436 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_union.h
Found #include "__type_traits/alignment_of.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:437 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/alignment_of.h
Found #include "__type_traits/apply_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:438 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/apply_cv.h
Found #include "__type_traits/can_extract_key.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:439 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/can_extract_key.h
Found #include "__type_traits/common_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:440 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h
Found #include "__type_traits/common_type.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:441 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_type.h
Found #include "__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:442 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "__type_traits/conjunction.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:443 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conjunction.h
Found #include "__type_traits/copy_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:444 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cv.h
Found #include "__type_traits/copy_cvref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:445 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cvref.h
Found #include "__type_traits/decay.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:446 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h
Found #include "__type_traits/dependent_type.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:447 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/dependent_type.h
Found #include "__type_traits/disjunction.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:448 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/disjunction.h
Found #include "__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:449 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "__type_traits/extent.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:450 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/extent.h
Found #include "__type_traits/has_unique_object_representation.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:451 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/has_unique_object_representation.h
Found #include "__type_traits/has_virtual_destructor.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:452 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/has_virtual_destructor.h
Found #include "__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:453 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "__type_traits/is_abstract.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:454 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_abstract.h
Found #include "__type_traits/is_aggregate.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:455 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_aggregate.h
Found #include "__type_traits/is_allocator.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:456 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_allocator.h
Found #include "__type_traits/is_arithmetic.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:457 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_arithmetic.h
Found #include "__type_traits/is_array.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:458 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_array.h
Found #include "__type_traits/is_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:459 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_assignable.h
Found #include "__type_traits/is_base_of.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:460 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_base_of.h
Found #include "__type_traits/is_bounded_array.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:461 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_bounded_array.h
Found #include "__type_traits/is_callable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:462 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_callable.h
Found #include "__type_traits/is_char_like_type.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:463 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_char_like_type.h
Found #include "__type_traits/is_class.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:464 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_class.h
Found #include "__type_traits/is_compound.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:465 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_compound.h
Found #include "__type_traits/is_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:466 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_const.h
Found #include "__type_traits/is_constant_evaluated.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:467 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constant_evaluated.h
Found #include "__type_traits/is_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:468 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h
Found #include "__type_traits/is_convertible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:469 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h
Found #include "__type_traits/is_copy_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:470 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_assignable.h
Found #include "__type_traits/is_copy_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:471 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_constructible.h
Found #include "__type_traits/is_core_convertible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:472 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_core_convertible.h
Found #include "__type_traits/is_default_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:473 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_default_constructible.h
Found #include "__type_traits/is_destructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:474 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h
Found #include "__type_traits/is_empty.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:475 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_empty.h
Found #include "__type_traits/is_enum.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:476 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h
Found #include "__type_traits/is_final.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:477 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_final.h
Found #include "__type_traits/is_floating_point.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:478 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_floating_point.h
Found #include "__type_traits/is_function.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:479 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h
Found #include "__type_traits/is_fundamental.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:480 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_fundamental.h
Found #include "__type_traits/is_implicitly_default_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:481 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_implicitly_default_constructible.h
Found #include "__type_traits/is_integral.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:482 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_integral.h
Found #include "__type_traits/is_literal_type.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:483 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_literal_type.h
Found #include "__type_traits/is_member_function_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:484 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_function_pointer.h
Found #include "__type_traits/is_member_object_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:485 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_object_pointer.h
Found #include "__type_traits/is_member_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:486 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_pointer.h
Found #include "__type_traits/is_move_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:487 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_assignable.h
Found #include "__type_traits/is_move_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:488 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_constructible.h
Found #include "__type_traits/is_nothrow_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:489 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_assignable.h
Found #include "__type_traits/is_nothrow_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:490 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_constructible.h
Found #include "__type_traits/is_nothrow_convertible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:491 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_convertible.h
Found #include "__type_traits/is_nothrow_copy_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:492 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_copy_assignable.h
Found #include "__type_traits/is_nothrow_copy_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:493 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_copy_constructible.h
Found #include "__type_traits/is_nothrow_default_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:494 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_default_constructible.h
Found #include "__type_traits/is_nothrow_destructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:495 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_destructible.h
Found #include "__type_traits/is_nothrow_move_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:496 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_assignable.h
Found #include "__type_traits/is_nothrow_move_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:497 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_constructible.h
Found #include "__type_traits/is_null_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:498 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_null_pointer.h
Found #include "__type_traits/is_object.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:499 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_object.h
Found #include "__type_traits/is_pod.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:500 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pod.h
Found #include "__type_traits/is_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:501 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pointer.h
Found #include "__type_traits/is_polymorphic.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:502 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_polymorphic.h
Found #include "__type_traits/is_primary_template.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:503 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_primary_template.h
Found #include "__type_traits/is_reference_wrapper.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:504 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference_wrapper.h
Found #include "__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:505 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "__type_traits/is_referenceable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:506 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_referenceable.h
Found #include "__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:507 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:508 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "__type_traits/is_scoped_enum.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:509 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scoped_enum.h
Found #include "__type_traits/is_signed_integer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:510 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_signed_integer.h
Found #include "__type_traits/is_signed.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:511 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_signed.h
Found #include "__type_traits/is_standard_layout.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:512 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_standard_layout.h
Found #include "__type_traits/is_swappable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:513 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h
Found #include "__type_traits/is_trivial.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:514 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivial.h
Found #include "__type_traits/is_trivially_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:515 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_assignable.h
Found #include "__type_traits/is_trivially_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:516 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_constructible.h
Found #include "__type_traits/is_trivially_copy_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:517 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_assignable.h
Found #include "__type_traits/is_trivially_copy_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:518 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_constructible.h
Found #include "__type_traits/is_trivially_copyable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:519 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copyable.h
Found #include "__type_traits/is_trivially_default_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:520 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_default_constructible.h
Found #include "__type_traits/is_trivially_destructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:521 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_destructible.h
Found #include "__type_traits/is_trivially_move_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:522 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_move_assignable.h
Found #include "__type_traits/is_trivially_move_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:523 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_move_constructible.h
Found #include "__type_traits/is_unbounded_array.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:524 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unbounded_array.h
Found #include "__type_traits/is_union.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:525 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_union.h
Found #include "__type_traits/is_unsigned_integer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:526 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unsigned_integer.h
Found #include "__type_traits/is_unsigned.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:527 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unsigned.h
Found #include "__type_traits/is_valid_expansion.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:528 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_valid_expansion.h
Found #include "__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:529 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "__type_traits/is_volatile.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:530 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_volatile.h
Found #include "__type_traits/lazy.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:531 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/lazy.h
Found #include "__type_traits/make_const_lvalue_ref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:532 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_const_lvalue_ref.h
Found #include "__type_traits/make_32_64_or_128_bit.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:533 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_32_64_or_128_bit.h
Found #include "__type_traits/make_signed.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:534 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_signed.h
Found #include "__type_traits/make_unsigned.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:535 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h
Found #include "__type_traits/maybe_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:536 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/maybe_const.h
Found #include "__type_traits/nat.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:537 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/nat.h
Found #include "__type_traits/negation.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:538 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/negation.h
Found #include "__type_traits/promote.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:539 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/promote.h
Found #include "__type_traits/rank.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:540 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/rank.h
Found #include "__type_traits/remove_all_extents.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:541 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h
Found #include "__type_traits/remove_const_ref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:542 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_const_ref.h
Found #include "__type_traits/remove_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:543 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_const.h
Found #include "__type_traits/remove_cvref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:544 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cvref.h
Found #include "__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:545 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "__type_traits/remove_extent.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:546 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_extent.h
Found #include "__type_traits/remove_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:547 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_pointer.h
Found #include "__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:548 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "__type_traits/remove_volatile.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:549 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_volatile.h
Found #include "__type_traits/result_of.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:550 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/result_of.h
Found #include "__type_traits/type_identity.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:551 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/type_identity.h
Found #include "__type_traits/type_list.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:552 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/type_list.h
Found #include "__type_traits/underlying_type.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:553 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/underlying_type.h
Found #include "__type_traits/void_t.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:554 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/void_t.h
Found #include "__utility/convert_to_integral.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:555 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/convert_to_integral.h
Found #include "__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:556 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "__utility/forward.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:557 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/forward.h
Found #include "__utility/move.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:558 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/move.h
Found #include "__utility/swap.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:559 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h
Found #include "cstdint" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:560 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstdint
Found #include "cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:561 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "version" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/type_traits:562 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/version
Found #include "libcxx/include/__pragma_pop" from /usr/local/cuda-12.3/include/cuda/std/detail/__pragma_pop:11 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__pragma_pop
Found #include "math_constants.h" from /usr/local/cuda-12.3/include/crt/math_functions.hpp:1189 at:
  /usr/local/cuda-12.3/include/math_constants.h
Found #include <cuda_fp16.h> from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__config:61 at:
  /usr/local/cuda-12.3/include/cuda_fp16.h
Found #include "__verbose_abort" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__assert:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__verbose_abort
Found #include "../__utility/forward.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/identity.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/forward.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/apply_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/apply_cv.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/decay.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h
Found #include "../__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_base_of.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_base_of.h
Found #include "../__type_traits/is_core_convertible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:25 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_core_convertible.h
Found #include "../__type_traits/is_member_function_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:26 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_function_pointer.h
Found #include "../__type_traits/is_member_object_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:27 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_object_pointer.h
Found #include "../__type_traits/is_reference_wrapper.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:28 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference_wrapper.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:29 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:30 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__type_traits/nat.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:31 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/nat.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:32 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:33 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__utility/forward.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h:34 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/forward.h
Found #include "../__type_traits/is_referenceable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_referenceable.h
Found #include "../__type_traits/is_referenceable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_pointer.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_referenceable.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_pointer.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_pointer.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_pointer.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_pointer.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../__type_traits/is_referenceable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_referenceable.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_storage.h:16 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_storage.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/nat.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_storage.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/nat.h
Found #include "../__type_traits/type_list.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_storage.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/type_list.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_storage.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/aligned_storage.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_union.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_storage.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_union.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/aligned_union.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/alignment_of.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/alignment_of.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/is_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/apply_cv.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_const.h
Found #include "../__type_traits/is_volatile.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/apply_cv.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_volatile.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/apply_cv.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/apply_cv.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__fwd/pair.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/can_extract_key.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__fwd/pair.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/can_extract_key.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/can_extract_key.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/can_extract_key.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/remove_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/can_extract_key.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_const.h
Found #include "../__type_traits/remove_const_ref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/can_extract_key.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_const_ref.h
Found #include "../__type_traits/common_type.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_type.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/copy_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cv.h
Found #include "../__type_traits/copy_cvref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cvref.h
Found #include "../__type_traits/disjunction.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/disjunction.h
Found #include "../__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "../__type_traits/is_array.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_array.h
Found #include "../__type_traits/is_convertible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:25 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:26 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:27 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:28 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:29 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../__type_traits/remove_cvref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:30 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cvref.h
Found #include "../__type_traits/void_t.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:31 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/void_t.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_reference.h:32 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/decay.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_type.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_type.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/remove_cvref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_type.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cvref.h
Found #include "../__type_traits/void_t.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_type.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/void_t.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/common_type.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conjunction.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conjunction.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conjunction.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/add_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cv.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_const.h
Found #include "../__type_traits/add_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cv.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_cv.h
Found #include "../__type_traits/add_volatile.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cv.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_volatile.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cvref.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/add_rvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cvref.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h
Found #include "../__type_traits/copy_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cvref.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/copy_cv.h
Found #include "../__type_traits/add_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_pointer.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/is_array.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_array.h
Found #include "../__type_traits/is_function.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h
Found #include "../__type_traits/is_referenceable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_referenceable.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/remove_extent.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_extent.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/decay.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/disjunction.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/extent.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/extent.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/has_unique_object_representation.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/remove_all_extents.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/has_unique_object_representation.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/has_unique_object_representation.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/has_virtual_destructor.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_abstract.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_aggregate.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_allocator.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/void_t.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_allocator.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/void_t.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_allocator.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_allocator.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_arithmetic.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_floating_point.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_arithmetic.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_floating_point.h
Found #include "../__type_traits/is_integral.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_arithmetic.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_integral.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_array.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_array.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_assignable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_base_of.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_bounded_array.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_bounded_array.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_callable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_callable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/conjunction.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_char_like_type.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conjunction.h
Found #include "../__type_traits/is_standard_layout.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_char_like_type.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_standard_layout.h
Found #include "../__type_traits/is_trivial.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_char_like_type.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivial.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_class.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_union.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_class.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_union.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_compound.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_fundamental.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_compound.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_fundamental.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_const.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/conjunction.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conjunction.h
Found #include "../__type_traits/disjunction.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/disjunction.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_base_of.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_base_of.h
Found #include "../__type_traits/is_destructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__type_traits/negation.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:25 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/negation.h
Found #include "../__type_traits/remove_cvref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:26 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cvref.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h:27 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_array.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_array.h
Found #include "../__type_traits/is_function.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/add_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_const.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/is_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_assignable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_assignable.h
Found #include "../__type_traits/add_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_const.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/is_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_constructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_core_convertible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_default_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_function.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/remove_all_extents.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_empty.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_array.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_array.h
Found #include "../__type_traits/is_class.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_class.h
Found #include "../__type_traits/is_floating_point.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_floating_point.h
Found #include "../__type_traits/is_function.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h
Found #include "../__type_traits/is_integral.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_integral.h
Found #include "../__type_traits/is_member_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_pointer.h
Found #include "../__type_traits/is_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pointer.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:25 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/is_union.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:26 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_union.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h:27 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_final.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_floating_point.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_floating_point.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_const.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_fundamental.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_null_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_fundamental.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_null_pointer.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_fundamental.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_implicitly_default_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_default_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_implicitly_default_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_default_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_integral.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_integral.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_literal_type.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_literal_type.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_literal_type.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__type_traits/remove_all_extents.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_literal_type.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_function_pointer.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_function.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_function_pointer.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_function.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_function_pointer.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_function_pointer.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_object_pointer.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_member_function_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_object_pointer.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_function_pointer.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_object_pointer.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_pointer.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_member_function_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_pointer.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_function_pointer.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_pointer.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/add_rvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h
Found #include "../__type_traits/is_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_assignable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_assignable.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/add_rvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h
Found #include "../__type_traits/is_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_constructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_assignable.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_assignable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_assignable.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_constructible.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_constructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_constructible.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/conjunction.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_convertible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conjunction.h
Found #include "../__type_traits/disjunction.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_convertible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/disjunction.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_convertible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_convertible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_convertible.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_convertible.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__type_traits/lazy.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_convertible.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/lazy.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_convertible.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../__type_traits/add_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_copy_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_const.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_copy_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/is_nothrow_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_copy_assignable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_assignable.h
Found #include "../__type_traits/add_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_copy_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_const.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_copy_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/is_nothrow_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_copy_constructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_constructible.h
Found #include "../__type_traits/is_nothrow_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_default_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_destructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_destructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_destructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_destructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_destructible.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__type_traits/remove_all_extents.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_destructible.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_destructible.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_destructible.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/add_rvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h
Found #include "../__type_traits/is_nothrow_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_assignable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_assignable.h
Found #include "../__type_traits/add_rvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h
Found #include "../__type_traits/is_nothrow_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_null_pointer.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_null_pointer.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_null_pointer.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_object.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_array.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_object.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_array.h
Found #include "../__type_traits/is_class.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_object.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_class.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_object.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__type_traits/is_union.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_object.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_union.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pod.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_trivially_copy_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pod.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_constructible.h
Found #include "../__type_traits/is_trivially_copy_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pod.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_assignable.h
Found #include "../__type_traits/is_trivially_default_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pod.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_default_constructible.h
Found #include "../__type_traits/is_trivially_destructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pod.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_destructible.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pod.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pointer.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pointer.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_polymorphic.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_polymorphic.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_primary_template.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_primary_template.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/is_valid_expansion.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_primary_template.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_valid_expansion.h
Found #include "../__type_traits/void_t.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_primary_template.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/void_t.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference_wrapper.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference_wrapper.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_referenceable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_referenceable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_arithmetic.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_arithmetic.h
Found #include "../__type_traits/is_enum.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h
Found #include "../__type_traits/is_member_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_member_pointer.h
Found #include "../__type_traits/is_null_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_null_pointer.h
Found #include "../__type_traits/is_pointer.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_pointer.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scoped_enum.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_convertible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scoped_enum.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_convertible.h
Found #include "../__type_traits/is_enum.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scoped_enum.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h
Found #include "../__type_traits/underlying_type.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scoped_enum.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/underlying_type.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_signed_integer.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_signed.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_arithmetic.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_signed.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_arithmetic.h
Found #include "../__type_traits/remove_all_extents.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_standard_layout.h:15 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_standard_layout.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "../__type_traits/is_move_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_assignable.h
Found #include "../__type_traits/is_move_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_constructible.h
Found #include "../__type_traits/is_nothrow_move_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_assignable.h
Found #include "../__type_traits/is_nothrow_move_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_constructible.h
Found #include "../__type_traits/is_referenceable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_referenceable.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:25 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/is_void.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:26 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h
Found #include "../__type_traits/nat.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:27 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/nat.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:28 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h:29 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivial.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_trivially_copyable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivial.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copyable.h
Found #include "../__type_traits/is_trivially_default_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivial.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_default_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__type_traits/add_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_const.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/is_trivially_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_assignable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_assignable.h
Found #include "../__type_traits/add_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_const.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/is_trivially_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copy_constructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copyable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copyable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__type_traits/remove_all_extents.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_copyable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h
Found #include "../__type_traits/is_trivially_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_default_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_destructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_destructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_destructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_destructible.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_destructible.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/is_scalar.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_destructible.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_scalar.h
Found #include "../__type_traits/remove_all_extents.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_destructible.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h
Found #include "../__type_traits/add_lvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_move_assignable.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_lvalue_reference.h
Found #include "../__type_traits/add_rvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_move_assignable.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h
Found #include "../__type_traits/is_trivially_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_move_assignable.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_assignable.h
Found #include "../__type_traits/add_rvalue_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_move_constructible.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/add_rvalue_reference.h
Found #include "../__type_traits/is_trivially_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_move_constructible.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_trivially_constructible.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unbounded_array.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_union.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_union.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unsigned_integer.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unsigned.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_arithmetic.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unsigned.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_arithmetic.h
Found #include "../__type_traits/is_integral.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unsigned.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_integral.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_valid_expansion.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/remove_cvref.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_void.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cvref.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_volatile.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_const_lvalue_ref.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_32_64_or_128_bit.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_32_64_or_128_bit.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/is_signed.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_32_64_or_128_bit.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_signed.h
Found #include "../__type_traits/is_unsigned.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_32_64_or_128_bit.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unsigned.h
Found #include "../__type_traits/make_unsigned.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_32_64_or_128_bit.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h
Found #include "../cstdint" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_32_64_or_128_bit.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstdint
Found #include "../__type_traits/apply_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_signed.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/apply_cv.h
Found #include "../__type_traits/is_enum.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_signed.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h
Found #include "../__type_traits/is_integral.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_signed.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_integral.h
Found #include "../__type_traits/nat.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_signed.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/nat.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_signed.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/type_list.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_signed.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/type_list.h
Found #include "../__type_traits/apply_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/apply_cv.h
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/is_enum.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h
Found #include "../__type_traits/is_integral.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_integral.h
Found #include "../__type_traits/is_unsigned.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_unsigned.h
Found #include "../__type_traits/nat.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/nat.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/type_list.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/type_list.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/make_unsigned.h:25 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/maybe_const.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/negation.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/promote.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/promote.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__utility/declval.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/promote.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/declval.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/promote.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/integral_constant.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/rank.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/integral_constant.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/rank.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_all_extents.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/remove_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_const_ref.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_const.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_const_ref.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../__type_traits/is_same.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cvref.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_same.h
Found #include "../__type_traits/remove_cv.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cvref.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cvref.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../__type_traits/remove_const.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_const.h
Found #include "../__type_traits/remove_volatile.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_cv.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_volatile.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_extent.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__functional/invoke.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/result_of.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__functional/invoke.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/type_list.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/is_enum.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/underlying_type.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h
Found #include "../__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/convert_to_integral.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "../__type_traits/is_enum.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/convert_to_integral.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_enum.h
Found #include "../__type_traits/is_floating_point.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/convert_to_integral.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_floating_point.h
Found #include "../__type_traits/underlying_type.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/convert_to_integral.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/underlying_type.h
Found #include "../__type_traits/is_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/forward.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_reference.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/forward.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/forward.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "../__type_traits/conditional.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/move.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/conditional.h
Found #include "../__type_traits/is_copy_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/move.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_copy_constructible.h
Found #include "../__type_traits/is_nothrow_move_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/move.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_constructible.h
Found #include "../__type_traits/remove_reference.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/move.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/remove_reference.h
Found #include "../__type_traits/enable_if.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h:17 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/enable_if.h
Found #include "../__type_traits/is_move_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_assignable.h
Found #include "../__type_traits/is_move_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h:19 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_move_constructible.h
Found #include "../__type_traits/is_nothrow_move_assignable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h:20 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_assignable.h
Found #include "../__type_traits/is_nothrow_move_constructible.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h:21 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_nothrow_move_constructible.h
Found #include "../__type_traits/is_swappable.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h:22 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__type_traits/is_swappable.h
Found #include "../__utility/move.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h:23 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/move.h
Found #include "../cstddef" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__utility/swap.h:24 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef
Found #include "__cuda/cstdint_prelude.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstdint:146 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__cuda/cstdint_prelude.h
Found #include <stdint.h> from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstdint:150 at:
  __jitify_builtin/stdint.h
Found #include "climits" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstdint:153 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/climits
Found #include "version" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstdint:154 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/version
Found #include "__cuda/cstddef_prelude.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef:39 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__cuda/cstddef_prelude.h
Found #include "version" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/cstddef:45 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/version
Found #include "cuda_fp16.hpp" from /usr/local/cuda-12.3/include/cuda_fp16.h:4748 at:
  /usr/local/cuda-12.3/include/cuda_fp16.hpp
Found #include "__availability" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__verbose_abort:18 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__availability
Found #include "__cuda/climits_prelude.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/climits:43 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/__cuda/climits_prelude.h
Found #include "support/win32/limits_msvc_win32.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/climits:56 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/support/win32/limits_msvc_win32.h
Found #include "support/ibm/limits.h" from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/climits:60 at:
  /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/support/ibm/limits.h
Found #include <float.h> from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/support/win32/limits_msvc_win32.h:21 at:
  __jitify_builtin/float.h
Found #include <float.h> from /usr/local/cuda-12.3/include/cuda/std/detail/libcxx/include/support/ibm/limits.h:40 at:
  __jitify_builtin/float.h
__jitify_rel_inc:/home/rob/FLAMEGPU2/build/bin/Debug:__jitify_name:flamegpu/runtime/DeviceAPI.cuh(13): catastrophic error: could not open source file "__jitify_rel_inc:/home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime:__jitify_name:dynamic/curve_rtc_dynamic.h" (no directories in search list)
  #include <__jitify_rel_inc:/home/rob/FLAMEGPU2/build/bin/Debug/flamegpu/runtime:__jitify_name:dynamic/curve_rtc_dynamic.h>
                                                                                                                            ^

1 catastrophic error detected in the compilation of "outputdata_program".
Compilation terminated.

ManyLinux2014 (CUDA 11.2/12.0)

Now builds on CI after setting definition _FILE_OFFSET_BITS=64

Visual Studio 2019

Still got the variadic template error

Log
   1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\functional(822): error #304: no instance of function template "std::_Invoker_ret<_Rx, false>::_Call [with _Rx=nvrtcResult]" matches the argument list [D:\a\FLAMEGPU2\FLAMEGPU2\build\FLAMEGPU\flamegpu.vcxproj]
                     argument types are: (std::decay_t<std::remove_reference_t<nvrtcResult (*&)(nvrtcProgram, const char *)>>, nvrtcProgram, std::remove_reference_t<const char *&>)
                   detected during:
                     instantiation of "_Rx std::_Func_impl_no_alloc<_Callable, _Rx, _Types...>::_Do_call(_Types &&...) [with _Callable=std::decay_t<std::remove_reference_t<nvrtcResult (*&)(nvrtcProgram, const char *)>>, _Rx=nvrtcResult, _Types=<nvrtcProgram, const char *>]" 
         (798): here
                     instantiation of "std::_Func_impl_no_alloc<_Callable, _Rx, _Types...>::_Func_impl_no_alloc(_Other &&) [with _Callable=std::decay_t<std::remove_reference_t<nvrtcResult (*&)(nvrtcProgram, const char *)>>, _Rx=nvrtcResult, _Types=<nvrtcProgram, const char *>, _Other=std::remove_reference_t<nvrtcResult (*&)(nvrtcProgram, const char *)>, <unnamed>=0]" 
         (916): here
                     instantiation of "void std::_Func_class<_Ret, _Types...>::_Reset(_Fx &&) [with _Ret=nvrtcResult, _Types=<nvrtcProgram, const char *>, _Fx=std::remove_reference_t<nvrtcResult (*&)(nvrtcProgram, const char *)>]" 
         (1042): here
                     instantiation of "std::function<_Fty>::function(_Fx) [with _Fty=nvrtcResult (nvrtcProgram, const char *), _Fx=nvrtcResult (*)(nvrtcProgram, const char *), <unnamed>=int]" 
         D:\a\FLAMEGPU2\FLAMEGPU2\build\_deps\jitify-src\jitify/jitify2.hpp(1467): here
                     instantiation of "jitify2::detail::SafeFunction<ResultType, Args...> jitify2::detail::DynamicLibrary::function<ResultType,Args...>(const char *) const [with ResultType=nvrtcResult, Args=<nvrtcProgram, const char *const>]" 
         D:\a\FLAMEGPU2\FLAMEGPU2\build\_deps\jitify-src\jitify/jitify2.hpp(3060): here
         
     1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\functional(822): error #304: no instance of function template "std::_Invoker_ret<_Rx, false>::_Call [with _Rx=const char *]" matches the argument list [D:\a\FLAMEGPU2\FLAMEGPU2\build\FLAMEGPU\flamegpu.vcxproj]
                     argument types are: (std::decay_t<std::remove_reference_t<jitify2::detail::function_type<const char *, nvrtcResult> *&>>, nvrtcResult)
                   detected during:
                     instantiation of "_Rx std::_Func_impl_no_alloc<_Callable, _Rx, _Types...>::_Do_call(_Types &&...) [with _Callable=std::decay_t<std::remove_reference_t<jitify2::detail::function_type<const char *, nvrtcResult> *&>>, _Rx=const char *, _Types=<nvrtcResult>]" 
         (798): here
                     instantiation of "std::_Func_impl_no_alloc<_Callable, _Rx, _Types...>::_Func_impl_no_alloc(_Other &&) [with _Callable=std::decay_t<std::remove_reference_t<jitify2::detail::function_type<const char *, nvrtcResult> *&>>, _Rx=const char *, _Types=<nvrtcResult>, _Other=std::remove_reference_t<jitify2::detail::function_type<const char *, nvrtcResult> *&>, <unnamed>=0]" 
         (916): here
                     instantiation of "void std::_Func_class<_Ret, _Types...>::_Reset(_Fx &&) [with _Ret=const char *, _Types=<nvrtcResult>, _Fx=std::remove_reference_t<jitify2::detail::function_type<const char *, nvrtcResult> *&>]" 
         (1042): here
                     instantiation of "std::function<_Fty>::function(_Fx) [with _Fty=const char *(nvrtcResult), _Fx=jitify2::detail::function_type<const char *, nvrtcResult> *, <unnamed>=int]" 
         D:\a\FLAMEGPU2\FLAMEGPU2\build\_deps\jitify-src\jitify/jitify2.hpp(1467): here
                     instantiation of "jitify2::detail::SafeFunction<ResultType, Args...> jitify2::detail::DynamicLibrary::function<ResultType,Args...>(const char *) const [with ResultType=const char *, Args=<nvrtcResult>]" 
         D:\a\FLAMEGPU2\FLAMEGPU2\build\_deps\jitify-src\jitify/jitify2.hpp(3112): here

     1>CudaBuildCore:
         3 errors detected in the compilation of "D:/a/FLAMEGPU2/FLAMEGPU2/src/flamegpu/simulation/CUDASimulation.cu".
         CUDASimulation.cu

Robadob avatar Nov 21 '23 12:11 Robadob

I think the stdlib.h error is because you're using --pre-include to include cuda.h. I probably need to add logic to handle pre-includes.

I'm guessing the dynamic/curve_rtc_dynamic.h error is because a header is doing #include "dynamic/curve_rtc_dynamic.h" from a subdirectory (is that the case?). It will probably work if you change it to #include <dynamic/curve_rtc_dynamic.h>.

I need to find a way to reproduce the variadic template error.

benbarsdell avatar Nov 21 '23 13:11 benbarsdell

I think the stdlib.h error is because you're using --pre-include to include cuda.h. I probably need to add logic to handle pre-includes.

Yes, removing that line has moved Visual Studio 2022 to the same error as previously reported with gcc.

I'm guessing the dynamic/curve_rtc_dynamic.h error is because a header is doing #include "dynamic/curve_rtc_dynamic.h" from a subdirectory (is that the case?). It will probably work if you change it to #include <dynamic/curve_rtc_dynamic.h>.

I made this change, and now it's unable to find a regular file included by dynamic/curve_rtc_dynamic.h (that is also included in the preloaded headers map)

#line 1 "outputdata_impl_curve_rtc_dynamic.h"
#ifndef CURVE_RTC_DYNAMIC_H_
#define CURVE_RTC_DYNAMIC_H_

#include "flamegpu/exception/FLAMEGPUDeviceException.cuh"
#include "flamegpu/detail/type_decode.h"
#include "flamegpu/runtime/detail/curve/Curve.cuh"
#include "flamegpu/util/dstring.h"
outputdata_impl_curve_rtc_dynamic.h(4): catastrophic error: could not open source file "__jitify_rel_inc:C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug/dynamic:__jitify_name:flamegpu/exception/FLAMEGPUDeviceException.cuh" (no directories in search list)

1 catastrophic error detected in the compilation of "outputdata_program".
Compilation terminated.

Whilst investigating this, I removed the preloading of all FLAMEGPU headers (which I presume shouldn't be required for speedup after this PR), and found it doesn't appear to be using our include directories passed via options to preprocess() (as shown in the code snippet from my previous comment).

Compilation failed: NVRTC_ERROR_COMPILATION
Compiler options: "-DFLAMEGPU_CURAND_Philox4_32_10 --device-debug -DDEBUG --define-macro=FLAMEGPU_SEATBELTS=1 -include=jitify_preinclude.h -std=c++11 -default-device -no-source-include -arch=compute_86 -DJITIFY_PREPROCESS_ONLY -DJITIFY_USED_HEADER_WARNINGS"
outputdata_program(1): catastrophic error: could not open source file "__jitify_rel_inc:C:\Users\Robert\fgpu2\fgpu2\build\bin\Debug:__jitify_name:flamegpu/runtime/DeviceAPI.cuh" (no directories in search list)

1 catastrophic error detected in the compilation of "outputdata_program".
Compilation terminated.

It would appear I need to rewrite all of our internal includes as system includes to get any further. (This is rather undesirable, and feels like quite the breaking-change)

I need to find a way to reproduce the variadic template error.

It's possibly a case of Visual Studio 2019 simply having poor support for std::function.

If you have a windows box with Visual Studio 2022, you should be able to install the VS 2019 build tools rather than the whole of Visual Studio 2019.

Robadob avatar Nov 21 '23 14:11 Robadob

I think you need to pass "-I." to tell it to use the root (current exe) dir as an include path. That should avoid needing to change any "" to <>. I've added a test that demonstrates this. Full details below.

The keys in the header_sources map are matched as described here:

    // Note: The names (keys) in header_sources will be matched:
    // a) directly, for `#include <name>` directives, and
    // b) as if they are filenames (relative to the current exe dir if not
    //    absolute), for `#include "name"` directives. This will NOT fall back
    //    to direct matching like <> includes.

So a key of dynamic/curve_rtc_dynamic.h will either match #include <dynamic/curve_rtc_dynamic.h> exactly, or it represents the path /root/dynamic/curve_rtc_dynamic.h when matching relative includes (/root is the path to the current executable). If dynamic/curve_rtc_dynamic.h contains #include "flamegpu/util/dstring.h", then it looks for that header at /root/dynamic/flamegpu/util/dstring.h or at include_paths/flamegpu/util/dstring.h. So the root include path needs to be specified explicitly ("-I.") in order to find it at /root/flamegpu/util/dstring.h, corresponding to a header with key flamegpu/util/dstring.h.

Note that the (no directories in search list) in the error message should be ignored, because Jitify handles all include paths itself instead of passing them to nvrtc. I might be able to patch the error message to list the include paths that jitify used.

benbarsdell avatar Nov 22 '23 02:11 benbarsdell

I think you need to pass "-I." to tell it to use the root (current exe) dir as an include path.

I've tried this, it has no impact.

It only appears able to find FLAMEGPU includes, if they are preloaded and passed via the headers map.

All of our FLAMEGPU includes (and their includes) are relative to the FLAMEGPU include directory.

In my local build this is -I.\..\..\..\..\include, however it could be among Python's site packages, and making the path absolute doesn't resolve the issue either.

I might be able to patch the error message to list the include paths that jitify used.

I've done this myself.

jitify.hpp:7162

  // Try loading from include directories.
  for (const std::string& include_path : include_paths) {
    *full_path = include.nonlocal_full_path(include_path);
    *full_path = path_simplify(*full_path);
    if (already_loaded(*full_path)) return HeaderLoadStatus::kAlreadyLoaded;
    if (read_text_file(*full_path, &source)) {
      return newly_loaded(std::move(source));
    } else {
      fprintf(stderr, 
          "Did not find #include %s at %s\n", include.name().c_str(), full_path->c_str());
    }
  }

The first file it can't find is

Did not find #include flamegpu/runtime/DeviceAPI.cuh at C:/Users/Robert/fgpu2/fgpu2/build/examples/cpp_rtc/boids_spatial3D/flamegpu/runtime/DeviceAPI.cuh
Did not find #include flamegpu/runtime/DeviceAPI.cuh at C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include/flamegpu/runtime/DeviceAPI.cuh
Did not find #include flamegpu/runtime/DeviceAPI.cuh at C:\Users\Robert\fgpu2\include/flamegpu/runtime/DeviceAPI.cuh

Somehow the relative path is being interpreted wrong.

That path should be C:\Users\Robert\fgpu2\fgpu2\include/flamegpu/runtime/DeviceAPI.cuh

(Note the extra fgpu2).

So I've updated our code, so that the absolute path to the include directory is passed instead -IC:/Users/Robert/fgpu2/fgpu2/include (by passing it through std::filesystem::absolute()).

I think this is a case of relative to executable, rather than working directory.

The first file that can't be found now has changed.

Did not find #include flamegpu/runtime/detail/curve/Curve.cuh at C:/Users/Robert/fgpu2/fgpu2/build/examples/cpp_rtc/boids_spatial3D/flamegpu/runtime/detail/curve/Curve.cuh
Did not find #include flamegpu/runtime/detail/curve/Curve.cuh at C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include/flamegpu/runtime/detail/curve/Curve.cuh
Did not find #include flamegpu/runtime/detail/curve/Curve.cuh at C:/Users/Robert/fgpu2/fgpu2/include/flamegpu/runtime/detail/curve/Curve.cuh

That file does exist on disk.

C:\Users\Robert\fgpu2\fgpu2\include\flamegpu\runtime\detail\curve>dir
 Volume in drive C has no label.
 Volume Serial Number is C4AA-47AC

 Directory of C:\Users\Robert\fgpu2\fgpu2\include\flamegpu\runtime\detail\curve

21/11/2023  16:12    <DIR>          .
02/11/2023  08:34    <DIR>          ..
07/06/2023  14:50             4,260 Curve.cuh
21/11/2023  16:12            18,496 curve_rtc.cuh
02/11/2023  08:34            26,385 DeviceCurve.cuh
25/10/2023  06:03             6,502 HostCurve.cuh
               4 File(s)         55,643 bytes
               2 Dir(s)  300,056,223,744 bytes free

Digging into read_text_file() it appears the last return false is the one triggering on this file.

(long)::fread(&(*content)[0], 1, size, file) returns 4169 whereas size==4260. Checking feof() and ferror() shows the reason to be that end of file was reached.

Curve.cuh is 92 lines long and on this machine has Windows line endings, the automatic conversion from \r\n to \n accounts for the reduced size read. If I change the fopen() call to use "rb" rather than "r" that functionality is disabled and that file is loaded correctly.

However, if I make that change for all files loaded by read_text_file(), it fails much later trying to open <exception>. I'm not sure why that header is now in the include hierarchy, and will need to investigate that on my end (this code hasn't changed from what worked with Jitify1 and Jitify2).


TLDR:

2 issues

  • Relative include paths are now resolved relative to the executable's dir, rather than the working directory. (I've no idea which is technically correct, or if both should be tried)
  • read_text_file() fails to load files with windows line endings, as the conversion from \r\n to \n during load causes the reported size from fread() to be reduced. (switch to opening files as binary "rb").

Robadob avatar Nov 22 '23 10:11 Robadob

Thanks for the debugging. I've pushed fixes for preincludes, absolute filenames, and the line endings issue.

The paths being relative to the executable directory is intentional, but I'm now re-thinking whether that's a good idea based on your feedback.

benbarsdell avatar Nov 22 '23 12:11 benbarsdell

it fails much later trying to open . I'm not sure why that header is now in the include hierarchy,

I've now guarded out the offending code, and with the other changes discussed from my previous comment (not clear why jitify1/vanilla-jitify2 weren't complaining). The code I've been testing with now works under both the Windows and Linux.

The Linux/CUDA12.3 RTC times are down to 961 & 1196ms from 24009 & 23543ms! (with preloaded FLAMEGPU headers disabled in both cases, which was the previous hack to accelerate compilation, previously 18793 & 17782ms with the preloading although it has negligible impact to performance with this branch)

I don't have an immediate RTC model to test GLM with (the original thing that spurred #90), but I expect it will fare similarly. The main difference with GLM is that it's many headers all use relative paths to include each-other, which prevented it from benefiting from the header preload hack.

I look forward to seeing this merged, thanks for all the help getting it working.

The VS2022 warnings (in #132) are still upsetting CI, and the VS2019 std::function/varadic-template issue persists. But we can probably guard the VS2022 warnings if necessary (VS via CMake doesn't seem to obey ISystem), and we may drop support for VS2019 if necessary (that requires some internal discussion though).

Robadob avatar Nov 22 '23 14:11 Robadob

I don't have an immediate RTC model to test GLM with (the original thing that spurred https://github.com/NVIDIA/jitify/issues/90), but I expect it will fare similarly.

Realised we have something in our test suite, that reported 1349 & 1318ms for the two (different) kernels under CUDA 12.3. Significantly better than the original >60s reported in #90.

To get any further I expected we'd need to be flattening the headers, so this is great.

Robadob avatar Nov 22 '23 15:11 Robadob

cc: @kmaehashi for vis (I need to find time to migrate to jitify2 so as to test this branch)

leofang avatar Dec 11 '23 06:12 leofang