slimgroup / JUDI.jl

Julia Devito inversion.
https://slimgroup.github.io/JUDI.jl
MIT License
96 stars 30 forks source link

JUDI's FluxJUDIExt issue #267

Closed zhen0z closed 1 month ago

zhen0z commented 1 month ago

Hi,

I am working with the JUDI package and am trying to use it with CPU-only configurations. However, when I load the JUDI and JutulDarcyRules packages, I encounter an error related to the FluxJUDIExt file, indicating that CUDA is required.

Could you please confirm if it's possible to use JUDI and JutulDarcyRules with only CPU support? If so, could you provide guidance on how to configure or modify the setup to avoid the CUDA dependency?

Thank you!

julia> using JUDI, PyPlot, LinearAlgebra

julia> using JutulDarcyRules [ Info: Precompiling FluxJUDIExt [69fb6015-e88d-5ed7-837a-bd32e4f16230] ERROR: LoadError: UndefVarError: CUDA not defined Stacktrace: [1] getproperty(x::Module, f::Symbol) @ Base ./Base.jl:31 [2] top-level scope @ ~/.julia/packages/JUDI/yFPLW/ext/FluxJUDIExt.jl:8 [3] include @ ./Base.jl:457 [inlined] [4] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::Nothing) @ Base ./loading.jl:2049 [5] top-level scope @ stdin:3 in expression starting at /home/zhen/.julia/packages/JUDI/yFPLW/ext/FluxJUDIExt.jl:1 in expression starting at stdin:3 ┌ Error: Error during loading of extension FluxJUDIExt of JUDI, use Base.retry_load_extensions() to retry. │ exception = │ 1-element ExceptionStack: │ Failed to precompile FluxJUDIExt [69fb6015-e88d-5ed7-837a-bd32e4f16230] to "/home/zhen/.julia/compiled/v1.9/FluxJUDIExt/jl_bxpOpx". │ Stacktrace: │ [1] error(s::String) │ @ Base ./error.jl:35 │ [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool) │ @ Base ./loading.jl:2294 │ [3] compilecache │ @ ./loading.jl:2167 [inlined] │ [4] _require(pkg::Base.PkgId, env::Nothing) │ @ Base ./loading.jl:1805 │ [5] _require_prelocked(uuidkey::Base.PkgId, env::Nothing) │ @ Base ./loading.jl:1660 │ [6] _require_prelocked(uuidkey::Base.PkgId) │ @ Base ./loading.jl:1658 │ [7] run_extension_callbacks(extid::Base.ExtensionId) │ @ Base ./loading.jl:1255 │ [8] run_extension_callbacks(pkgid::Base.PkgId) │ @ Base ./loading.jl:1290 │ [9] run_package_callbacks(modkey::Base.PkgId) │ @ Base ./loading.jl:1124 │ [10] _tryrequire_from_serialized(modkey::Base.PkgId, path::String, ocachepath::String, sourcepath::String, depmods::Vector{Any}) │ @ Base ./loading.jl:1398 │ [11] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128) │ @ Base ./loading.jl:1494 │ [12] _require(pkg::Base.PkgId, env::String) │ @ Base ./loading.jl:1783 │ [13] _require_prelocked(uuidkey::Base.PkgId, env::String) │ @ Base ./loading.jl:1660 │ [14] macro expansion │ @ ./loading.jl:1648 [inlined] │ [15] macro expansion │ @ ./lock.jl:267 [inlined] │ [16] require(into::Module, mod::Symbol) │ @ Base ./loading.jl:1611 │ [17] eval │ @ ./boot.jl:370 [inlined] │ [18] eval_user_input(ast::Any, backend::REPL.REPLBackend, mod::Module) │ @ REPL ~/EdWork/A3_Software/julia-1.9.4/share/julia/stdlib/v1.9/REPL/src/REPL.jl:153 │ [19] repl_backend_loop(backend::REPL.REPLBackend, get_module::Function) │ @ REPL ~/EdWork/A3_Software/julia-1.9.4/share/julia/stdlib/v1.9/REPL/src/REPL.jl:249 │ [20] start_repl_backend(backend::REPL.REPLBackend, consumer::Any; get_module::Function) │ @ REPL ~/EdWork/A3_Software/julia-1.9.4/share/julia/stdlib/v1.9/REPL/src/REPL.jl:234 │ [21] run_repl(repl::REPL.AbstractREPL, consumer::Any; backend_on_current_task::Bool, backend::Any) │ @ REPL ~/EdWork/A3_Software/julia-1.9.4/share/julia/stdlib/v1.9/REPL/src/REPL.jl:379 │ [22] run_repl(repl::REPL.AbstractREPL, consumer::Any) │ @ REPL ~/EdWork/A3_Software/julia-1.9.4/share/julia/stdlib/v1.9/REPL/src/REPL.jl:365 │ [23] (::Base.var"#1018#1020"{Bool, Bool, Bool})(REPL::Module) │ @ Base ./client.jl:421 │ [24] #invokelatest#2 │ @ ./essentials.jl:819 [inlined] │ [25] invokelatest │ @ ./essentials.jl:816 [inlined] │ [26] run_main_repl(interactive::Bool, quiet::Bool, banner::Bool, history_file::Bool, color_set::Bool) │ @ Base ./client.jl:405 │ [27] exec_options(opts::Base.JLOptions) │ @ Base ./client.jl:322 │ [28] _start() │ @ Base ./client.jl:522 └ @ Base loading.jl:1261

mloubout commented 1 month ago

Looking into it

zhen0z commented 1 month ago

Great, thanks!

Mathias Louboutin @.***> 于2024年7月26日周五 14:54写道:

Looking into it

— Reply to this email directly, view it on GitHub https://github.com/slimgroup/JUDI.jl/issues/267#issuecomment-2252824493, or unsubscribe https://github.com/notifications/unsubscribe-auth/BIOR2UWUH6245VF3MZ4CCN3ZOJIJ3AVCNFSM6AAAAABLQFH3KCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENJSHAZDINBZGM . You are receiving this because you authored the thread.Message ID: @.***>

mloubout commented 1 month ago

Should be fixed now

zhen0z commented 1 month ago

That's great, thanks!

Mathias Louboutin @.***> 于2024年8月4日周日 14:00写道:

Should be fixed now

— Reply to this email directly, view it on GitHub https://github.com/slimgroup/JUDI.jl/issues/267#issuecomment-2267535177, or unsubscribe https://github.com/notifications/unsubscribe-auth/BIOR2URWQWQ766GVEMGKKKDZPYQXZAVCNFSM6AAAAABLQFH3KCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRXGUZTKMJXG4 . You are receiving this because you authored the thread.Message ID: @.***>