Skip to content

Update software stack to NEO v25.27.34303 #513

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Aug 18, 2025

Conversation

michel2323
Copy link
Contributor

@michel2323 michel2323 commented Aug 6, 2025

Edit: I reported local issues which just a wrong setting.

Copy link
Contributor

github-actions bot commented Aug 13, 2025

Your PR requires formatting changes to meet the project's style guidelines.
Please consider running Runic (git runic master) to apply these changes.

Click here to view the suggested changes.
diff --git a/deps/generate_helpers.jl b/deps/generate_helpers.jl
index 01f162d..5e715db 100644
--- a/deps/generate_helpers.jl
+++ b/deps/generate_helpers.jl
@@ -1,6 +1,6 @@
 non_parametric_routines = ["init_matrix_handle", "release_matrix_handle", "set_matrix_property",
 "init_matmat_descr", "release_matmat_descr", "set_matmat_data", "get_matmat_data", "matmat",
-"omatcopy", "sort_matrix", "optimize_gemv", "optimize_gemm", "optimize_trmv", "optimize_trsv", "optimize_trsm",
+    "omatcopy", "sort_matrix", "optimize_gemv", "optimize_gemm", "optimize_trmv", "optimize_trsv", "optimize_trsm",
 "init_omatconvert_descr", "release_omatconvert_descr", "init_omatadd_descr", "release_omatadd_descr",
 "omatconvert_buffer_size", "omatconvert_analyze", "omatconvert_get_nnz", "omatconvert",
 "omatadd_buffer_size", "omatadd_analyze", "omatadd_get_nnz"]
diff --git a/deps/generate_interfaces.jl b/deps/generate_interfaces.jl
index a36fd0a..470c451 100644
--- a/deps/generate_interfaces.jl
+++ b/deps/generate_interfaces.jl
@@ -241,7 +241,7 @@ function generate_headers(library::String, filename::Vector{String}, output::Str
         # The routine "optimize_trsm" has two versions.
         suffix = ""
         (name_routine == "optimize_trsm") && occursin("columns", header) && (suffix = "_advanced")
-        (name_routine == "optimize_gemm") && occursin("columns", header) && (suffix = "_advanced")
+                (name_routine == "optimize_gemm") && occursin("columns", header) && (suffix = "_advanced")
         name_routine ∈ ("set_csr_data", "set_coo_data") && occursin("int64_t", header) && (suffix = "_64")
         occursin("batch", name_routine) && !occursin("**", header) && (suffix = "_strided")
 
diff --git a/lib/level-zero/libze.jl b/lib/level-zero/libze.jl
index d8ad0b8..167a511 100644
--- a/lib/level-zero/libze.jl
+++ b/lib/level-zero/libze.jl
@@ -11,7 +11,8 @@ end
 
 function check(f)
     res = retry_reclaim(err -> err == RESULT_ERROR_OUT_OF_HOST_MEMORY ||
-                               err == RESULT_ERROR_OUT_OF_DEVICE_MEMORY) do
+            err == RESULT_ERROR_OUT_OF_DEVICE_MEMORY
+    ) do
         return f()
     end
 
@@ -2164,9 +2165,11 @@ end
 const ze_init_driver_type_flag_t = _ze_init_driver_type_flag_t
 
 @checked function zeInitDrivers(pCount, phDrivers, desc)
-    @ccall libze_loader.zeInitDrivers(pCount::Ptr{UInt32},
-                                      phDrivers::Ptr{ze_driver_handle_t},
-                                      desc::Ptr{ze_init_driver_type_desc_t})::ze_result_t
+    @ccall libze_loader.zeInitDrivers(
+        pCount::Ptr{UInt32},
+        phDrivers::Ptr{ze_driver_handle_t},
+        desc::Ptr{ze_init_driver_type_desc_t}
+    )::ze_result_t
 end
 
 @cenum _ze_api_version_t::UInt32 begin
@@ -3444,9 +3447,11 @@ end
 const ze_kernel_get_binary_exp_version_t = _ze_kernel_get_binary_exp_version_t
 
 @checked function zeKernelGetBinaryExp(hKernel, pSize, pKernelBinary)
-    @ccall libze_loader.zeKernelGetBinaryExp(hKernel::ze_kernel_handle_t,
-                                             pSize::Ptr{Csize_t},
-                                             pKernelBinary::Ptr{UInt8})::ze_result_t
+    @ccall libze_loader.zeKernelGetBinaryExp(
+        hKernel::ze_kernel_handle_t,
+        pSize::Ptr{Csize_t},
+        pKernelBinary::Ptr{UInt8}
+    )::ze_result_t
 end
 
 @cenum _ze_driver_ddi_handles_ext_version_t::UInt32 begin
@@ -3492,39 +3497,49 @@ end
 const ze_external_semaphore_ext_flag_t = _ze_external_semaphore_ext_flag_t
 
 @checked function zeDeviceImportExternalSemaphoreExt(hDevice, desc, phSemaphore)
-    @ccall libze_loader.zeDeviceImportExternalSemaphoreExt(hDevice::ze_device_handle_t,
-                                                           desc::Ptr{ze_external_semaphore_ext_desc_t},
-                                                           phSemaphore::Ptr{ze_external_semaphore_ext_handle_t})::ze_result_t
+    @ccall libze_loader.zeDeviceImportExternalSemaphoreExt(
+        hDevice::ze_device_handle_t,
+        desc::Ptr{ze_external_semaphore_ext_desc_t},
+        phSemaphore::Ptr{ze_external_semaphore_ext_handle_t}
+    )::ze_result_t
 end
 
 @checked function zeDeviceReleaseExternalSemaphoreExt(hSemaphore)
     @ccall libze_loader.zeDeviceReleaseExternalSemaphoreExt(hSemaphore::ze_external_semaphore_ext_handle_t)::ze_result_t
 end
 
-@checked function zeCommandListAppendSignalExternalSemaphoreExt(hCommandList, numSemaphores,
-                                                                phSemaphores, signalParams,
-                                                                hSignalEvent, numWaitEvents,
-                                                                phWaitEvents)
-    @ccall libze_loader.zeCommandListAppendSignalExternalSemaphoreExt(hCommandList::ze_command_list_handle_t,
-                                                                      numSemaphores::UInt32,
-                                                                      phSemaphores::Ptr{ze_external_semaphore_ext_handle_t},
-                                                                      signalParams::Ptr{ze_external_semaphore_signal_params_ext_t},
-                                                                      hSignalEvent::ze_event_handle_t,
-                                                                      numWaitEvents::UInt32,
-                                                                      phWaitEvents::Ptr{ze_event_handle_t})::ze_result_t
-end
-
-@checked function zeCommandListAppendWaitExternalSemaphoreExt(hCommandList, numSemaphores,
-                                                              phSemaphores, waitParams,
-                                                              hSignalEvent, numWaitEvents,
-                                                              phWaitEvents)
-    @ccall libze_loader.zeCommandListAppendWaitExternalSemaphoreExt(hCommandList::ze_command_list_handle_t,
-                                                                    numSemaphores::UInt32,
-                                                                    phSemaphores::Ptr{ze_external_semaphore_ext_handle_t},
-                                                                    waitParams::Ptr{ze_external_semaphore_wait_params_ext_t},
-                                                                    hSignalEvent::ze_event_handle_t,
-                                                                    numWaitEvents::UInt32,
-                                                                    phWaitEvents::Ptr{ze_event_handle_t})::ze_result_t
+@checked function zeCommandListAppendSignalExternalSemaphoreExt(
+        hCommandList, numSemaphores,
+        phSemaphores, signalParams,
+        hSignalEvent, numWaitEvents,
+        phWaitEvents
+    )
+    @ccall libze_loader.zeCommandListAppendSignalExternalSemaphoreExt(
+        hCommandList::ze_command_list_handle_t,
+        numSemaphores::UInt32,
+        phSemaphores::Ptr{ze_external_semaphore_ext_handle_t},
+        signalParams::Ptr{ze_external_semaphore_signal_params_ext_t},
+        hSignalEvent::ze_event_handle_t,
+        numWaitEvents::UInt32,
+        phWaitEvents::Ptr{ze_event_handle_t}
+    )::ze_result_t
+end
+
+@checked function zeCommandListAppendWaitExternalSemaphoreExt(
+        hCommandList, numSemaphores,
+        phSemaphores, waitParams,
+        hSignalEvent, numWaitEvents,
+        phWaitEvents
+    )
+    @ccall libze_loader.zeCommandListAppendWaitExternalSemaphoreExt(
+        hCommandList::ze_command_list_handle_t,
+        numSemaphores::UInt32,
+        phSemaphores::Ptr{ze_external_semaphore_ext_handle_t},
+        waitParams::Ptr{ze_external_semaphore_wait_params_ext_t},
+        hSignalEvent::ze_event_handle_t,
+        numWaitEvents::UInt32,
+        phWaitEvents::Ptr{ze_event_handle_t}
+    )::ze_result_t
 end
 
 @cenum _ze_device_cache_line_size_ext_version_t::UInt32 begin
@@ -3617,50 +3632,66 @@ mutable struct _ze_rtas_parallel_operation_ext_handle_t end
 const ze_rtas_parallel_operation_ext_handle_t = Ptr{_ze_rtas_parallel_operation_ext_handle_t}
 
 @checked function zeRTASBuilderCreateExt(hDriver, pDescriptor, phBuilder)
-    @ccall libze_loader.zeRTASBuilderCreateExt(hDriver::ze_driver_handle_t,
-                                               pDescriptor::Ptr{ze_rtas_builder_ext_desc_t},
-                                               phBuilder::Ptr{ze_rtas_builder_ext_handle_t})::ze_result_t
+    @ccall libze_loader.zeRTASBuilderCreateExt(
+        hDriver::ze_driver_handle_t,
+        pDescriptor::Ptr{ze_rtas_builder_ext_desc_t},
+        phBuilder::Ptr{ze_rtas_builder_ext_handle_t}
+    )::ze_result_t
 end
 
-@checked function zeRTASBuilderGetBuildPropertiesExt(hBuilder, pBuildOpDescriptor,
-                                                     pProperties)
-    @ccall libze_loader.zeRTASBuilderGetBuildPropertiesExt(hBuilder::ze_rtas_builder_ext_handle_t,
-                                                           pBuildOpDescriptor::Ptr{ze_rtas_builder_build_op_ext_desc_t},
-                                                           pProperties::Ptr{ze_rtas_builder_ext_properties_t})::ze_result_t
+@checked function zeRTASBuilderGetBuildPropertiesExt(
+        hBuilder, pBuildOpDescriptor,
+        pProperties
+    )
+    @ccall libze_loader.zeRTASBuilderGetBuildPropertiesExt(
+        hBuilder::ze_rtas_builder_ext_handle_t,
+        pBuildOpDescriptor::Ptr{ze_rtas_builder_build_op_ext_desc_t},
+        pProperties::Ptr{ze_rtas_builder_ext_properties_t}
+    )::ze_result_t
 end
 
 @checked function zeDriverRTASFormatCompatibilityCheckExt(hDriver, rtasFormatA, rtasFormatB)
-    @ccall libze_loader.zeDriverRTASFormatCompatibilityCheckExt(hDriver::ze_driver_handle_t,
-                                                                rtasFormatA::ze_rtas_format_ext_t,
-                                                                rtasFormatB::ze_rtas_format_ext_t)::ze_result_t
-end
-
-@checked function zeRTASBuilderBuildExt(hBuilder, pBuildOpDescriptor, pScratchBuffer,
-                                        scratchBufferSizeBytes, pRtasBuffer,
-                                        rtasBufferSizeBytes, hParallelOperation,
-                                        pBuildUserPtr, pBounds, pRtasBufferSizeBytes)
-    @ccall libze_loader.zeRTASBuilderBuildExt(hBuilder::ze_rtas_builder_ext_handle_t,
-                                              pBuildOpDescriptor::Ptr{ze_rtas_builder_build_op_ext_desc_t},
-                                              pScratchBuffer::Ptr{Cvoid},
-                                              scratchBufferSizeBytes::Csize_t,
-                                              pRtasBuffer::Ptr{Cvoid},
-                                              rtasBufferSizeBytes::Csize_t,
-                                              hParallelOperation::ze_rtas_parallel_operation_ext_handle_t,
-                                              pBuildUserPtr::Ptr{Cvoid},
-                                              pBounds::Ptr{ze_rtas_aabb_ext_t},
-                                              pRtasBufferSizeBytes::Ptr{Csize_t})::ze_result_t
-end
-
-@checked function zeRTASBuilderCommandListAppendCopyExt(hCommandList, dstptr, srcptr, size,
-                                                        hSignalEvent, numWaitEvents,
-                                                        phWaitEvents)
-    @ccall libze_loader.zeRTASBuilderCommandListAppendCopyExt(hCommandList::ze_command_list_handle_t,
-                                                              dstptr::Ptr{Cvoid},
-                                                              srcptr::Ptr{Cvoid},
-                                                              size::Csize_t,
-                                                              hSignalEvent::ze_event_handle_t,
-                                                              numWaitEvents::UInt32,
-                                                              phWaitEvents::Ptr{ze_event_handle_t})::ze_result_t
+    @ccall libze_loader.zeDriverRTASFormatCompatibilityCheckExt(
+        hDriver::ze_driver_handle_t,
+        rtasFormatA::ze_rtas_format_ext_t,
+        rtasFormatB::ze_rtas_format_ext_t
+    )::ze_result_t
+end
+
+@checked function zeRTASBuilderBuildExt(
+        hBuilder, pBuildOpDescriptor, pScratchBuffer,
+        scratchBufferSizeBytes, pRtasBuffer,
+        rtasBufferSizeBytes, hParallelOperation,
+        pBuildUserPtr, pBounds, pRtasBufferSizeBytes
+    )
+    @ccall libze_loader.zeRTASBuilderBuildExt(
+        hBuilder::ze_rtas_builder_ext_handle_t,
+        pBuildOpDescriptor::Ptr{ze_rtas_builder_build_op_ext_desc_t},
+        pScratchBuffer::Ptr{Cvoid},
+        scratchBufferSizeBytes::Csize_t,
+        pRtasBuffer::Ptr{Cvoid},
+        rtasBufferSizeBytes::Csize_t,
+        hParallelOperation::ze_rtas_parallel_operation_ext_handle_t,
+        pBuildUserPtr::Ptr{Cvoid},
+        pBounds::Ptr{ze_rtas_aabb_ext_t},
+        pRtasBufferSizeBytes::Ptr{Csize_t}
+    )::ze_result_t
+end
+
+@checked function zeRTASBuilderCommandListAppendCopyExt(
+        hCommandList, dstptr, srcptr, size,
+        hSignalEvent, numWaitEvents,
+        phWaitEvents
+    )
+    @ccall libze_loader.zeRTASBuilderCommandListAppendCopyExt(
+        hCommandList::ze_command_list_handle_t,
+        dstptr::Ptr{Cvoid},
+        srcptr::Ptr{Cvoid},
+        size::Csize_t,
+        hSignalEvent::ze_event_handle_t,
+        numWaitEvents::UInt32,
+        phWaitEvents::Ptr{ze_event_handle_t}
+    )::ze_result_t
 end
 
 @checked function zeRTASBuilderDestroyExt(hBuilder)
@@ -3668,13 +3699,17 @@ end
 end
 
 @checked function zeRTASParallelOperationCreateExt(hDriver, phParallelOperation)
-    @ccall libze_loader.zeRTASParallelOperationCreateExt(hDriver::ze_driver_handle_t,
-                                                         phParallelOperation::Ptr{ze_rtas_parallel_operation_ext_handle_t})::ze_result_t
+    @ccall libze_loader.zeRTASParallelOperationCreateExt(
+        hDriver::ze_driver_handle_t,
+        phParallelOperation::Ptr{ze_rtas_parallel_operation_ext_handle_t}
+    )::ze_result_t
 end
 
 @checked function zeRTASParallelOperationGetPropertiesExt(hParallelOperation, pProperties)
-    @ccall libze_loader.zeRTASParallelOperationGetPropertiesExt(hParallelOperation::ze_rtas_parallel_operation_ext_handle_t,
-                                                                pProperties::Ptr{ze_rtas_parallel_operation_ext_properties_t})::ze_result_t
+    @ccall libze_loader.zeRTASParallelOperationGetPropertiesExt(
+        hParallelOperation::ze_rtas_parallel_operation_ext_handle_t,
+        pProperties::Ptr{ze_rtas_parallel_operation_ext_properties_t}
+    )::ze_result_t
 end
 
 @checked function zeRTASParallelOperationJoinExt(hParallelOperation)
@@ -3693,11 +3728,15 @@ end
 
 const ze_device_vector_sizes_ext_version_t = _ze_device_vector_sizes_ext_version_t
 
-@checked function zeDeviceGetVectorWidthPropertiesExt(hDevice, pCount,
-                                                      pVectorWidthProperties)
-    @ccall libze_loader.zeDeviceGetVectorWidthPropertiesExt(hDevice::ze_device_handle_t,
-                                                            pCount::Ptr{UInt32},
-                                                            pVectorWidthProperties::Ptr{ze_device_vector_width_properties_ext_t})::ze_result_t
+@checked function zeDeviceGetVectorWidthPropertiesExt(
+        hDevice, pCount,
+        pVectorWidthProperties
+    )
+    @ccall libze_loader.zeDeviceGetVectorWidthPropertiesExt(
+        hDevice::ze_device_handle_t,
+        pCount::Ptr{UInt32},
+        pVectorWidthProperties::Ptr{ze_device_vector_width_properties_ext_t}
+    )::ze_result_t
 end
 
 @cenum _ze_cache_reservation_ext_version_t::UInt32 begin
@@ -4376,14 +4415,18 @@ const ze_mutable_command_list_exp_flag_t = _ze_mutable_command_list_exp_flag_t
                                                          pCommandId::Ptr{UInt64})::ze_result_t
 end
 
-@checked function zeCommandListGetNextCommandIdWithKernelsExp(hCommandList, desc,
-                                                              numKernels, phKernels,
-                                                              pCommandId)
-    @ccall libze_loader.zeCommandListGetNextCommandIdWithKernelsExp(hCommandList::ze_command_list_handle_t,
-                                                                    desc::Ptr{ze_mutable_command_id_exp_desc_t},
-                                                                    numKernels::UInt32,
-                                                                    phKernels::Ptr{ze_kernel_handle_t},
-                                                                    pCommandId::Ptr{UInt64})::ze_result_t
+@checked function zeCommandListGetNextCommandIdWithKernelsExp(
+        hCommandList, desc,
+        numKernels, phKernels,
+        pCommandId
+    )
+    @ccall libze_loader.zeCommandListGetNextCommandIdWithKernelsExp(
+        hCommandList::ze_command_list_handle_t,
+        desc::Ptr{ze_mutable_command_id_exp_desc_t},
+        numKernels::UInt32,
+        phKernels::Ptr{ze_kernel_handle_t},
+        pCommandId::Ptr{UInt64}
+    )::ze_result_t
 end
 
 @checked function zeCommandListUpdateMutableCommandsExp(hCommandList, desc)
@@ -4407,12 +4450,16 @@ end
                                                                        phWaitEvents::Ptr{ze_event_handle_t})::ze_result_t
 end
 
-@checked function zeCommandListUpdateMutableCommandKernelsExp(hCommandList, numKernels,
-                                                              pCommandId, phKernels)
-    @ccall libze_loader.zeCommandListUpdateMutableCommandKernelsExp(hCommandList::ze_command_list_handle_t,
-                                                                    numKernels::UInt32,
-                                                                    pCommandId::Ptr{UInt64},
-                                                                    phKernels::Ptr{ze_kernel_handle_t})::ze_result_t
+@checked function zeCommandListUpdateMutableCommandKernelsExp(
+        hCommandList, numKernels,
+        pCommandId, phKernels
+    )
+    @ccall libze_loader.zeCommandListUpdateMutableCommandKernelsExp(
+        hCommandList::ze_command_list_handle_t,
+        numKernels::UInt32,
+        pCommandId::Ptr{UInt64},
+        phKernels::Ptr{ze_kernel_handle_t}
+    )::ze_result_t
 end
 
 struct _ze_init_params_t
diff --git a/lib/level-zero/oneL0.jl b/lib/level-zero/oneL0.jl
index 7227a1b..6ac4144 100644
--- a/lib/level-zero/oneL0.jl
+++ b/lib/level-zero/oneL0.jl
@@ -98,18 +98,18 @@ export OutOfGPUMemoryError
 An operation allocated too much GPU memory.
 """
 struct OutOfGPUMemoryError <: Exception
-  sz::Int
-  dev::Union{ZeDevice, Nothing}
+    sz::Int
+    dev::Union{ZeDevice, Nothing}
 
-  function OutOfGPUMemoryError(sz::Integer=0, dev::Union{ZeDevice, Nothing}=nothing)
-    new(sz, dev)
-  end
+    function OutOfGPUMemoryError(sz::Integer = 0, dev::Union{ZeDevice, Nothing} = nothing)
+        return new(sz, dev)
+    end
 end
 
 function Base.showerror(io::IO, err::OutOfGPUMemoryError)
     print(io, "Out of GPU memory")
     if err.sz > 0
-      print(io, " trying to allocate $(Base.format_bytes(err.sz))")
+        print(io, " trying to allocate $(Base.format_bytes(err.sz))")
     end
     if err.dev !== nothing
         print(" on device $(properties(err.dev).name)")
diff --git a/lib/support/liboneapi_support.jl b/lib/support/liboneapi_support.jl
index 9b5858f..29bc6f1 100644
--- a/lib/support/liboneapi_support.jl
+++ b/lib/support/liboneapi_support.jl
@@ -6613,23 +6613,31 @@ function onemklXsparse_release_matmat_descr(p_desc)
 end
 
 function onemklXsparse_init_omatconvert_descr(device_queue, p_descr)
-    @ccall liboneapi_support.onemklXsparse_init_omatconvert_descr(device_queue::syclQueue_t,
-                                                                  p_descr::Ptr{omatconvert_descr_t})::Cint
+    return @ccall liboneapi_support.onemklXsparse_init_omatconvert_descr(
+        device_queue::syclQueue_t,
+        p_descr::Ptr{omatconvert_descr_t}
+    )::Cint
 end
 
 function onemklXsparse_release_omatconvert_descr(device_queue, descr)
-    @ccall liboneapi_support.onemklXsparse_release_omatconvert_descr(device_queue::syclQueue_t,
-                                                                     descr::omatconvert_descr_t)::Cint
+    return @ccall liboneapi_support.onemklXsparse_release_omatconvert_descr(
+        device_queue::syclQueue_t,
+        descr::omatconvert_descr_t
+    )::Cint
 end
 
 function onemklXsparse_init_omatadd_descr(device_queue, p_omatadd_desc)
-    @ccall liboneapi_support.onemklXsparse_init_omatadd_descr(device_queue::syclQueue_t,
-                                                              p_omatadd_desc::Ptr{omatadd_descr_t})::Cint
+    return @ccall liboneapi_support.onemklXsparse_init_omatadd_descr(
+        device_queue::syclQueue_t,
+        p_omatadd_desc::Ptr{omatadd_descr_t}
+    )::Cint
 end
 
 function onemklXsparse_release_omatadd_descr(device_queue, omatadd_desc)
-    @ccall liboneapi_support.onemklXsparse_release_omatadd_descr(device_queue::syclQueue_t,
-                                                                 omatadd_desc::omatadd_descr_t)::Cint
+    return @ccall liboneapi_support.onemklXsparse_release_omatadd_descr(
+        device_queue::syclQueue_t,
+        omatadd_desc::omatadd_descr_t
+    )::Cint
 end
 
 function onemklXsparse_omatcopy(device_queue, transpose_val, spMat_in, spMat_out)
@@ -6695,19 +6703,25 @@ function onemklXsparse_optimize_trsv(device_queue, uplo_val, opA, diag_val, A)
 end
 
 function onemklXsparse_optimize_gemm(device_queue, opA, A)
-    @ccall liboneapi_support.onemklXsparse_optimize_gemm(device_queue::syclQueue_t,
-                                                         opA::onemklTranspose,
-                                                         A::matrix_handle_t)::Cint
-end
-
-function onemklXsparse_optimize_gemm_advanced(device_queue, layout_val, opA, opB, A,
-                                              columns)
-    @ccall liboneapi_support.onemklXsparse_optimize_gemm_advanced(device_queue::syclQueue_t,
-                                                                  layout_val::onemklLayout,
-                                                                  opA::onemklTranspose,
-                                                                  opB::onemklTranspose,
-                                                                  A::matrix_handle_t,
-                                                                  columns::Int64)::Cint
+    return @ccall liboneapi_support.onemklXsparse_optimize_gemm(
+        device_queue::syclQueue_t,
+        opA::onemklTranspose,
+        A::matrix_handle_t
+    )::Cint
+end
+
+function onemklXsparse_optimize_gemm_advanced(
+        device_queue, layout_val, opA, opB, A,
+        columns
+    )
+    return @ccall liboneapi_support.onemklXsparse_optimize_gemm_advanced(
+        device_queue::syclQueue_t,
+        layout_val::onemklLayout,
+        opA::onemklTranspose,
+        opB::onemklTranspose,
+        A::matrix_handle_t,
+        columns::Int64
+    )::Cint
 end
 
 function onemklXsparse_optimize_trsm(device_queue, uplo_val, opA, diag_val, A)
diff --git a/test/onemkl.jl b/test/onemkl.jl
index e5b6541..a4fd56c 100644
--- a/test/onemkl.jl
+++ b/test/onemkl.jl
@@ -1132,7 +1132,7 @@ end
 
                     alpha = rand(T)
                     beta = rand(T)
-                    oneMKL.sparse_optimize_gemm!(transa, dA)
+                        oneMKL.sparse_optimize_gemm!(transa, dA)
                     oneMKL.sparse_gemm!(transa, transb, alpha, dA, dB, beta, dC)
                     @test alpha * opa(A) * opb(B) + beta * C ≈ collect(dC)
                 end

@michel2323
Copy link
Contributor Author

Rebased on @amontoison's #511 because it is related.

@michel2323
Copy link
Contributor Author

@maleadt @amontoison Finally, all pieces fall in place. This updates the Intel stack. Now oneAPI.jl runs with the artifacts on PVC and Aurora itself.

@michel2323 michel2323 requested review from maleadt and amontoison and removed request for maleadt August 18, 2025 14:07
Copy link

codecov bot commented Aug 18, 2025

Codecov Report

❌ Patch coverage is 28.57143% with 15 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.70%. Comparing base (71a7de7) to head (91b3214).
⚠️ Report is 9 commits behind head on master.

Files with missing lines Patch % Lines
lib/level-zero/oneL0.jl 0.00% 11 Missing ⚠️
lib/mkl/wrappers_sparse.jl 50.00% 4 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #513      +/-   ##
==========================================
- Coverage   81.93%   81.70%   -0.24%     
==========================================
  Files          44       44              
  Lines        2530     2541      +11     
==========================================
+ Hits         2073     2076       +3     
- Misses        457      465       +8     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@amontoison amontoison merged commit a0ee705 into JuliaGPU:master Aug 18, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants