-
Notifications
You must be signed in to change notification settings - Fork 23
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
Fail to import #399
Comments
Make sure you have the necessary permissions to access the GPU hardware in Apart from those suggestions though, there's not much we can do, the API being as opaque as it is. If you don't figure it out, it may be best to open an issue on https://github.com/intel/compute-runtime. |
I'm using up to date archlinux, and kernel 6.8.1, with official julia binaries. I'll try your suggestions, thanks. Not sure how to explain the issue upstream, though. |
After fixing And maybe also a run with |
mer. 20 mars 2024 at 08:39, Tim Besard ***@***.***> wrote:
After fixing /dev permissions, please post a strace. Maybe we can see what's up in there.
And maybe also a run with LD_DEBUG=libs.
Here we go:
https://git.sr.ht/~csantosb/traces/tree/69d47a88865754482c216b466a758343b216779b
contains output of
strace -o trace.txt /tmp/julia-1.10.2/bin/julia -e "using oneAPI"
and
export LD_DEBUG=libs; /tmp/julia-1.10.2/bin/julia -e "using oneAPI" 2> trace2.txt
Thanks for your help
|
It looks like you have some Level Zero things installed globally:
On my system, it's after that (normally failed) discovery that
That doesn't happen in your strace, so I'd guess that the mixing of our Could you try removing those system libraries, if only temporarily? Generally, the |
That doesn't happen in your strace, so I'd guess that the mixing of our libze with your
system libze_validation makes the whole thing bail out early.
Could you try removing those system libraries, if only temporarily? Generally, the
LD_DEBUG=libs output shouldn't be loading any system libraries (except for core ones like
libc, libm, libpthread, etc).
Good point, thanks !
Now, don’t have any package related to oneapi in my system
sudo pacman -Fy libze_intel_vpu.so.1
sudo pacman -Fy libze_tracing_layer.so.1
sudo pacman -Fx libze_
:: Synchronizing package databases...
core is up to date
extra is up to date
:: Synchronizing package databases...
core is up to date
extra is up to date
extra/level-zero-loader 1.15.1-1
usr/lib/libze_tracing_layer.so.1
extra/intel-compute-runtime 23.48.27912.11-1
usr/lib/libze_intel_gpu.so
usr/lib/libze_intel_gpu.so.1
usr/lib/libze_intel_gpu.so.1.3.27912
extra/intel-oneapi-basekit 2024.0.0.49564-2
opt/intel/oneapi/2024.0/lib/libze_trace_collector.so
opt/intel/oneapi/compiler/2024.0/lib/libze_trace_collector.so
extra/level-zero-headers 1.15.1-1
usr/lib/pkgconfig/libze_loader.pc
extra/level-zero-loader 1.15.1-1
usr/lib/libze_loader.so
usr/lib/libze_loader.so.1
usr/lib/libze_loader.so.1.15.1
usr/lib/libze_tracing_layer.so
usr/lib/libze_tracing_layer.so.1
usr/lib/libze_tracing_layer.so.1.15.1
usr/lib/libze_validation_layer.so
usr/lib/libze_validation_layer.so.1
usr/lib/libze_validation_layer.so.1.15.1
sudo updatedb
locate libze_intel_vpu.so.1
locate libze_tracing_layer.so.1
/home/csantos/.julia/artifacts/521996985d539cc752bbc959f2fd92df020356dc/lib/libze_tracing_layer.so.1
/home/csantos/.julia/artifacts/521996985d539cc752bbc959f2fd92df020356dc/lib/libze_tracing_layer.so.1.16.1
So my system is clean, and this is what I obtain, which is closer to what
you get
https://git.sr.ht/~csantosb/traces/tree/6d99b628d22feb97557dff084bf0bcd16ce914cc
|
OK great, despite the error being the same we do actually see
I don't see anything stand out here. There's an Maybe also try running with
|
Maybe also try running with ZE_ENABLE_LOADER_DEBUG_TRACE= , according to
https://github.com/oneapi-src/level-zero?tab=readme-ov-file#debug-trace.
❯ ZE_ENABLE_LOADER_DEBUG_TRACE=1 jl --project examples/vadd.jl
ZE_LOADER_DEBUG_TRACE:Loading Driver libze_intel_gpu.so.1
ZE_LOADER_DEBUG_TRACE:Loading Driver libze_intel_vpu.so.1
ZE_LOADER_DEBUG_TRACE:Load Library of libze_intel_vpu.so.1 failed with libze_intel_vpu.so.1: cannot open shared object file: No such file or directory
ZE_LOADER_DEBUG_TRACE:Load Library of libze_tracing_layer.so.1 failed with libze_tracing_layer.so.1: cannot open shared object file: No such file or directory
ZE_LOADER_DEBUG_TRACE:check_drivers(flags=0(ZE_INIT_ALL_DRIVER_TYPES_ENABLED))
ZE_LOADER_DEBUG_TRACE:init driver libze_intel_gpu.so.1 zeInit(0(ZE_INIT_ALL_DRIVER_TYPES_ENABLED)) returning ZE_RESULT_SUCCESS
Here is my output:
ZE_ENABLE_LOADER_DEBUG_TRACE=1 /tmp/julia-1.10.2/bin/julia -e "using oneAPI"
ZE_LOADER_DEBUG_TRACE:Loading Driver libze_intel_gpu.so.1
ZE_LOADER_DEBUG_TRACE:Loading Driver libze_intel_vpu.so.1
ZE_LOADER_DEBUG_TRACE:Load Library of libze_intel_vpu.so.1 failed with libze_intel_vpu.so.1: cannot open shared object file: No such file or directory
ZE_LOADER_DEBUG_TRACE:Load Library of libze_tracing_layer.so.1 failed with libze_tracing_layer.so.1: cannot open shared object file: No such file or directo
ry
ZE_LOADER_DEBUG_TRACE:check_drivers(flags=0(ZE_INIT_ALL_DRIVER_TYPES_ENABLED))
ZE_LOADER_DEBUG_TRACE:init driver libze_intel_gpu.so.1 zeInit(0(ZE_INIT_ALL_DRIVER_TYPES_ENABLED)) returning ZE_RESULT_ERROR_UNINITIALIZED
ZE_LOADER_DEBUG_TRACE:Check Drivers Failed on libze_intel_gpu.so.1 , driver will be removed. zeInit failed with ZE_RESULT_ERROR_UNINITIALIZED
┌ Error: Failed to initialize oneAPI
│ exception =
│ ZeError: driver is not initialized (code 2013265921, ZE_RESULT_ERROR_UNINITIALIZED)
│ Stacktrace:
│ [1] throw_api_error(res::oneAPI.oneL0._ze_result_t)
│ @ oneAPI.oneL0 ~/.julia/packages/oneAPI/2gxUb/lib/level-zero/libze.jl:8
│ [2] check
│ @ ~/.julia/packages/oneAPI/2gxUb/lib/level-zero/libze.jl:19 [inlined]
│ [3] zeInit
│ @ ~/.julia/packages/oneAPI/2gxUb/lib/utils/call.jl:24 [inlined]
│ [4] __init__()
│ @ oneAPI.oneL0 ~/.julia/packages/oneAPI/2gxUb/lib/level-zero/oneL0.jl:100
│ [5] run_module_init(mod::Module, i::Int64)
│ @ Base ./loading.jl:1134
│ [6] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String)
│ @ Base ./loading.jl:1122
│ [7] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any})
│ @ Base ./loading.jl:1067
│ [8] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128)
│ @ Base ./loading.jl:1581
│ [9] _require(pkg::Base.PkgId, env::String)
│ @ Base ./loading.jl:1938
│ [10] __require_prelocked(uuidkey::Base.PkgId, env::String)
│ @ Base ./loading.jl:1812
│ [11] #invoke_in_world#3
│ @ ./essentials.jl:926 [inlined]
│ [12] invoke_in_world
│ @ ./essentials.jl:923 [inlined]
│ [13] _require_prelocked(uuidkey::Base.PkgId, env::String)
│ @ Base ./loading.jl:1803
│ [14] macro expansion
│ @ ./loading.jl:1790 [inlined]
│ [15] macro expansion
│ @ ./lock.jl:267 [inlined]
│ [16] __require(into::Module, mod::Symbol)
│ @ Base ./loading.jl:1753
│ [17] #invoke_in_world#3
│ @ ./essentials.jl:926 [inlined]
│ [18] invoke_in_world
│ @ ./essentials.jl:923 [inlined]
│ [19] require(into::Module, mod::Symbol)
│ @ Base ./loading.jl:1746
│ [20] eval
│ @ ./boot.jl:385 [inlined]
│ [21] exec_options(opts::Base.JLOptions)
│ @ Base ./client.jl:291
│ [22] _start()
│ @ Base ./client.jl:552
└ @ oneAPI.oneL0 ~/.julia/packages/oneAPI/2gxUb/lib/level-zero/oneL0.jl:103
Maybe the two lines:
ZE_LOADER_DEBUG_TRACE:init driver libze_intel_gpu.so.1 zeInit(0(ZE_INIT_ALL_DRIVER_TYPES_ENABLED)) returning ZE_RESULT_ERROR_UNINITIALIZED
ZE_LOADER_DEBUG_TRACE:Check Drivers Failed on libze_intel_gpu.so.1 , driver will be removed. zeInit failed with ZE_RESULT_ERROR_UNINITIALIZED
provide hint about where to look at for a possible solution.
|
It does look like the issue is with the compute-runtime, providing libze_intel_gpu. Could you try running with |
cg
It does look like the issue is with the compute-runtime, providing libze_intel_gpu. Could
you try running with NEOReadDebugKeys=1 PrintDebugMessages=1 PrintXeLogs=1?
export NEOReadDebugKeys=1; export PrintDebugMessages=1; export
PrintXeLogs=1; export ZE_ENABLE_LOADER_DEBUG_TRACE=1; /tmp/julia-1.10.2/bin/julia -e "using oneAPI"
gives
ZE_LOADER_DEBUG_TRACE:Loading Driver libze_intel_gpu.so.1
ZE_LOADER_DEBUG_TRACE:Loading Driver libze_intel_vpu.so.1
ZE_LOADER_DEBUG_TRACE:Load Library of libze_intel_vpu.so.1 failed with libze_intel_vpu.so.1: cannot open shared object file: No such file or directory
ZE_LOADER_DEBUG_TRACE:Load Library of libze_tracing_layer.so.1 failed with libze_tracing_layer.so.1: cannot open shared object file: No such file or directory
ZE_LOADER_DEBUG_TRACE:check_drivers(flags=0(ZE_INIT_ALL_DRIVER_TYPES_ENABLED))
INFO: System Info query failed!
WARNING: Failed to request OCL Turbo Boost
ZE_LOADER_DEBUG_TRACE:init driver libze_intel_gpu.so.1 zeInit(0(ZE_INIT_ALL_DRIVER_TYPES_ENABLED)) returning ZE_RESULT_ERROR_UNINITIALIZED
ZE_LOADER_DEBUG_TRACE:Check Drivers Failed on libze_intel_gpu.so.1 , driver will be removed. zeInit failed with ZE_RESULT_ERROR_UNINITIALIZED
┌ Error: Failed to initialize oneAPI
│ exception =
│ ZeError: driver is not initialized (code 2013265921, ZE_RESULT_ERROR_UNINITIALIZED)
│ Stacktrace:
│ [1] throw_api_error(res::oneAPI.oneL0._ze_result_t)
│ @ oneAPI.oneL0 ~/.julia/packages/oneAPI/2gxUb/lib/level-zero/libze.jl:8
│ [2] check
│ @ ~/.julia/packages/oneAPI/2gxUb/lib/level-zero/libze.jl:19 [inlined]
│ [3] zeInit
│ @ ~/.julia/packages/oneAPI/2gxUb/lib/utils/call.jl:24 [inlined]
│ [4] __init__()
│ @ oneAPI.oneL0 ~/.julia/packages/oneAPI/2gxUb/lib/level-zero/oneL0.jl:100
│ [5] run_module_init(mod::Module, i::Int64)
│ @ Base ./loading.jl:1134
│ [6] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String)
│ @ Base ./loading.jl:1122
│ [7] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any})
│ @ Base ./loading.jl:1067
│ [8] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128)
│ @ Base ./loading.jl:1581
│ [9] _require(pkg::Base.PkgId, env::String)
│ @ Base ./loading.jl:1938
│ [10] __require_prelocked(uuidkey::Base.PkgId, env::String)
│ @ Base ./loading.jl:1812
│ [11] #invoke_in_world#3
│ @ ./essentials.jl:926 [inlined]
│ [12] invoke_in_world
│ @ ./essentials.jl:923 [inlined]
│ [13] _require_prelocked(uuidkey::Base.PkgId, env::String)
│ @ Base ./loading.jl:1803
│ [14] macro expansion
│ @ ./loading.jl:1790 [inlined]
│ [15] macro expansion
│ @ ./lock.jl:267 [inlined]
│ [16] __require(into::Module, mod::Symbol)
│ @ Base ./loading.jl:1753
│ [17] #invoke_in_world#3
│ @ ./essentials.jl:926 [inlined]
│ [18] invoke_in_world
│ @ ./essentials.jl:923 [inlined]
│ [19] require(into::Module, mod::Symbol)
│ @ Base ./loading.jl:1746
│ [20] eval
│ @ ./boot.jl:385 [inlined]
│ [21] exec_options(opts::Base.JLOptions)
│ @ Base ./client.jl:291
│ [22] _start()
│ @ Base ./client.jl:552
└ @ oneAPI.oneL0 ~/.julia/packages/oneAPI/2gxUb/lib/level-zero/oneL0.jl:103
|
Problem fixed for me after a system update. Thanks a lot for your help ! |
When I try to
using oneAPI
(oneAPI v1.4.0) I get the following message.My
versioninfo()
isand the output of my
hwinfo --display
givesOne more,
inxi -Fzm
gives meAny idea ?
Thanks
The text was updated successfully, but these errors were encountered: