<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:"JetBrains Mono";
panose-1:2 0 0 9 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
font-size:12.0pt;
font-family:"Calibri",sans-serif;
mso-ligatures:standardcontextual;
mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
p.p1, li.p1, div.p1
{mso-style-name:p1;
margin:0cm;
background:#29282A;
font-size:10.5pt;
font-family:"JetBrains Mono";
color:#F5EDFF;}
span.s2
{mso-style-name:s2;
color:#FC70A3;}
span.s3
{mso-style-name:s3;
color:#82EF93;}
span.s4
{mso-style-name:s4;
color:#65E7FD;}
span.s1
{mso-style-name:s1;}
span.apple-converted-space
{mso-style-name:apple-converted-space;}
.MsoChpDefault
{mso-style-type:export-only;
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
--></style>
</head>
<body lang="en-IT" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hi all, <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> Checking this morning on a new machine with Linux using the latest NVIDIA and CUDA drivers, the build fails for HAT:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">```<o:p></o:p></span></p>
<p class="p1"><span class="s1"><b>/home/juan/repos/babylon/hat/backends/ffi/cuda/src/main/native/cpp/cuda_backend.cpp:85:31:</b>
</span><span class="s2"><b>error: </b></span><span class="s1">too few arguments to function ‘<b>CUresult</b></span><span class="s3"><b> cuCtxCreate_v4</b></span><span class="s1">(CUctx_st**, CUctxCreateParams*, unsigned int, CUdevice)’</span><o:p></o:p></p>
<p class="p1"><span class="apple-converted-space"> </span><span class="s1">85 |
</span><span class="apple-converted-space"> </span><span class="s1">CUDA_CHECK(cuCtxCreate</span><span class="s2"><b>(</b></span><span class="s1">&context, 0, device), "cuCtxCreate");</span><o:p></o:p></p>
<p class="p1"><span class="apple-converted-space"> </span><span class="s1">|
</span><span class="apple-converted-space"> </span><span class="s2"><b>^</b></span><o:p></o:p></p>
<p class="p1"><span class="s1"><b>/home/juan/repos/babylon/hat/backends/ffi/cuda/src/main/native/include/cuda_backend.h:78:16:</b>
</span><span class="s4"><b>note: </b></span><span class="s1">in definition of macro ‘<b>CUDA_CHECK</b>’</span><o:p></o:p></p>
<p class="p1"><span class="apple-converted-space"> </span><span class="s1">78 |
</span><span class="apple-converted-space"> </span><span class="s1">.e =
</span><span class="s4"><b>err</b></span><span class="s1">, \</span><o:p></o:p></p>
<p class="p1"><span class="apple-converted-space"> </span><span class="s1">|</span><span class="apple-converted-space">
</span><span class="s4"><b>^~~</b></span><o:p></o:p></p>
<p class="p1"><span class="s1">In file included from <b>/home/juan/repos/babylon/hat/backends/ffi/cuda/src/main/native/include/cuda_backend.h:52</b>:</span><o:p></o:p></p>
<p class="p1"><span class="s1"><b>/usr/local/cuda/include/cuda.h:6275:18:</b> </span>
<span class="s4"><b>note: </b></span><span class="s1">declared here</span><o:p></o:p></p>
<p class="p1"><span class="apple-converted-space"> </span><span class="s1">6275 | CUresult CUDAAPI
</span><span class="s4"><b>cuCtxCreate</b></span><span class="s1">(CUcontext *pctx, CUctxCreateParams *ctxCreateParams, unsigned int flags, CUdevice dev);</span><o:p></o:p></p>
<p class="p1"><span class="apple-converted-space"> </span><span class="s1">|</span><span class="apple-converted-space">
</span><span class="s4"><b>^~~~~~~~~~~</b></span><o:p></o:p></p>
<p class="p1"><span class="s1">gmake[2]: *** [cuda/CMakeFiles/cuda_backend.dir/build.make:76: cuda/CMakeFiles/cuda_backend.dir/src/main/native/cpp/cuda_backend.cpp.o] Error 1</span><o:p></o:p></p>
<p class="p1"><span class="s1">gmake[1]: *** [CMakeFiles/Makefile2:323: cuda/CMakeFiles/cuda_backend.dir/all] Error 2</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">```<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">For CUDA 13, this is the new call:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://docs.nvidia.com/cuda/cuda-driver-api/group__CUDA__CTX.html#group__CUDA__CTX_1g77e9fb578caefca5ed15b4acebf35265">https://docs.nvidia.com/cuda/cuda-driver-api/group__CUDA__CTX.html#group__CUDA__CTX_1g77e9fb578caefca5ed15b4acebf35265</a>
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">This should be an easy fix, but I wonder if HAT should focus on CUDA 13+ or try to support both (12.x and 13+).<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Juan<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>