Recent changes (master)

Jens Axboe <[email protected]> Sat, 11 Oct 2025 06:00:01 -0600
Newsgroups org.kernel.vger.fio
Message-ID <[email protected]>
The following changes since commit b9b306b542afb8a3059c2035fb2034a89e4660d1:

  stat: report zone reset count in json output format (2025-10-09 13:16:51 -0600)

are available in the Git repository at:

  git://git.kernel.dk/fio.git master

for you to fetch changes up to ae3475defe994e855f912d4b8dadf69c479b9ca2:

  memory: fix typo in cuda < 13 cuCtxCreate() (2025-10-10 14:56:44 -0600)

----------------------------------------------------------------
Jens Axboe (2):
      Merge branch 'new-cuda-ctx-params' of https://github.com/maxime-peim/fio
      memory: fix typo in cuda < 13 cuCtxCreate()

Maxime Peim (1):
      memory: add cuda 13 support

 configure | 24 ++++++++++++++++++++++++
 memory.c  |  7 +++++++
 2 files changed, 31 insertions(+)

---

Diff of recent changes:

diff --git a/configure b/configure
index 3209e225..43e20ca9 100755
--- a/configure
+++ b/configure
@@ -180,6 +180,7 @@ libhdfs="no"
 devdax="no"
 pmem="no"
 cuda="no"
+cuda13="no"
 libcufile="no"
 disable_lex=""
 disable_pmem="no"
@@ -2810,6 +2811,26 @@ EOF
 fi
 print_config "libcufile" "$libcufile"
 
+##########################################
+# cuda 13 probe
+if test "$cuda" != "no" || test "$libcufile" != "no"; then
+cat > $TMPC << EOF
+#include <cuda.h>
+
+int main(int argc, char **argv)
+{
+  cuCtxCreate(NULL, NULL, 0, NULL);
+  return 0;
+}
+EOF
+  if compile_prog "" "-lcuda" "cuda13"; then
+    cuda13="yes"
+  else
+    cuda13="no"
+  fi
+  print_config "cuda>=13" "$cuda13"
+fi
+
 ##########################################
 # check for cc -march=native
 build_native="no"
@@ -3305,6 +3326,9 @@ fi
 if test "$libcufile" = "yes" ; then
   output_sym "CONFIG_LIBCUFILE"
 fi
+if test "$cuda13" = "yes" ; then
+  output_sym "CONFIG_CUDA13"
+fi
 if test "$dfs" = "yes" ; then
   output_sym "CONFIG_DFS"
 fi
diff --git a/memory.c b/memory.c
index 2fdca657..29d93930 100644
--- a/memory.c
+++ b/memory.c
@@ -215,6 +215,9 @@ static int alloc_mem_cudamalloc(struct thread_data *td, size_t total_mem)
 #ifdef CONFIG_CUDA
 	CUresult ret;
 	char name[128];
+#ifdef CONFIG_CUDA13
+	CUctxCreateParams ctx_params = {};
+#endif
 
 	ret = cuInit(0);
 	if (ret != CUDA_SUCCESS) {
@@ -250,7 +253,11 @@ static int alloc_mem_cudamalloc(struct thread_data *td, size_t total_mem)
 	dprint(FD_MEM, "dev_id = [%d], device name = [%s]\n", \
 	       td->gpu_dev_id, name);
 
+#ifdef CONFIG_CUDA13
+	ret = cuCtxCreate(&td->cu_ctx, &ctx_params, CU_CTX_MAP_HOST, td->cu_dev);
+#else
 	ret = cuCtxCreate(&td->cu_ctx, CU_CTX_MAP_HOST, td->cu_dev);
+#endif
 	if (ret != CUDA_SUCCESS) {
 		log_err("fio: failed to create cuda context: %d\n", ret);
 		return 1;