Skip to content
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

fails to precompile on Julia nightly, the precompile workload throws an AssertionError #667

Open
nsajko opened this issue Feb 14, 2025 · 4 comments

Comments

@nsajko
Copy link

nsajko commented Feb 14, 2025

Info Given GPUCompiler was explicitly requested, output will be shown live 
ERROR: LoadError: AssertionError: entry_fn !== nothing
Stacktrace:
  [1] irgen(job::GPUCompiler.CompilerJob)
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/irgen.jl:10
  [2] macro expansion
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:172 [inlined]
  [3] macro expansion
    @ ~/.julia/packages/TimerOutputs/6KVfH/src/TimerOutput.jl:253 [inlined]
  [4] emit_llvm(job::GPUCompiler.CompilerJob; toplevel::Bool, libraries::Bool, optimize::Bool, cleanup::Bool, validate::Bool, only_entry::Bool)
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:171
  [5] emit_llvm
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:159 [inlined]
  [6] #codegen#110
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:100 [inlined]
  [7] codegen
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:82 [inlined]
  [8] compile(target::Symbol, job::GPUCompiler.CompilerJob; kwargs::@Kwargs{libraries::Bool})
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:79
  [9] compile
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:74 [inlined]
 [10] #184
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:35 [inlined]
 [11] JuliaContext(f::GPUCompiler.var"#184#185"{GPUCompiler.CompilerJob{GPUCompiler.NativeCompilerTarget, GPUCompiler.var"##462".DummyCompilerParams}}; kwargs::@Kwargs{})
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:34
 [12] JuliaContext(f::Function)
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:25
 [13] macro expansion
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:32 [inlined]
 [14] macro expansion
    @ ~/.julia/packages/PrecompileTools/L8A3n/src/workloads.jl:78 [inlined]
 [15] macro expansion
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:25 [inlined]
 [16] macro expansion
    @ ~/.julia/packages/PrecompileTools/L8A3n/src/workloads.jl:140 [inlined]
 [17] top-level scope
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:139
 [18] include(mapexpr::Function, mod::Module, _path::String)
    @ Base ./Base.jl:308
 [19] top-level scope
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/GPUCompiler.jl:51
 [20] include(mod::Module, _path::String)
    @ Base ./Base.jl:307
 [21] 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:3004
 [22] top-level scope
    @ stdin:6
 [23] eval(m::Module, e::Any)
    @ Core ./boot.jl:488
 [24] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
    @ Base ./loading.jl:2855
 [25] include_string
    @ ./loading.jl:2865 [inlined]
 [26] exec_options(opts::Base.JLOptions)
    @ Base ./client.jl:326
 [27] _start()
    @ Base ./client.jl:556
in expression starting at /home/nsajko/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:3
in expression starting at /home/nsajko/.julia/packages/GPUCompiler/OGnEB/src/GPUCompiler.jl:1
in expression starting at stdin:6
  ✗ GPUCompiler
Precompiling GPUCompiler finished.
  0 dependencies successfully precompiled in 33 seconds. 37 already precompiled.

ERROR: The following 1 direct dependency failed to precompile:

GPUCompiler 

Failed to precompile GPUCompiler [61eb1bfa-7361-4325-ad38-22787b887f55] to "/home/nsajko/.julia/compiled/v1.13/GPUCompiler/jl_xK5Iql".
ERROR: LoadError: AssertionError: entry_fn !== nothing
Stacktrace:
  [1] irgen(job::GPUCompiler.CompilerJob)
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/irgen.jl:10
  [2] macro expansion
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:172 [inlined]
  [3] macro expansion
    @ ~/.julia/packages/TimerOutputs/6KVfH/src/TimerOutput.jl:253 [inlined]
  [4] emit_llvm(job::GPUCompiler.CompilerJob; toplevel::Bool, libraries::Bool, optimize::Bool, cleanup::Bool, validate::Bool, only_entry::Bool)
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:171
  [5] emit_llvm
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:159 [inlined]
  [6] #codegen#110
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:100 [inlined]
  [7] codegen
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:82 [inlined]
  [8] compile(target::Symbol, job::GPUCompiler.CompilerJob; kwargs::@Kwargs{libraries::Bool})
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:79
  [9] compile
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:74 [inlined]
 [10] #184
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:35 [inlined]
 [11] JuliaContext(f::GPUCompiler.var"#184#185"{GPUCompiler.CompilerJob{GPUCompiler.NativeCompilerTarget, GPUCompiler.var"##462".DummyCompilerParams}}; kwargs::@Kwargs{})
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:34
 [12] JuliaContext(f::Function)
    @ GPUCompiler ~/.julia/packages/GPUCompiler/OGnEB/src/driver.jl:25
 [13] macro expansion
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:32 [inlined]
 [14] macro expansion
    @ ~/.julia/packages/PrecompileTools/L8A3n/src/workloads.jl:78 [inlined]
 [15] macro expansion
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:25 [inlined]
 [16] macro expansion
    @ ~/.julia/packages/PrecompileTools/L8A3n/src/workloads.jl:140 [inlined]
 [17] top-level scope
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:139
 [18] include(mapexpr::Function, mod::Module, _path::String)
    @ Base ./Base.jl:308
 [19] top-level scope
    @ ~/.julia/packages/GPUCompiler/OGnEB/src/GPUCompiler.jl:51
 [20] include(mod::Module, _path::String)
    @ Base ./Base.jl:307
 [21] 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:3004
 [22] top-level scope
    @ stdin:6
 [23] eval(m::Module, e::Any)
    @ Core ./boot.jl:488
 [24] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
    @ Base ./loading.jl:2855
 [25] include_string
    @ ./loading.jl:2865 [inlined]
 [26] exec_options(opts::Base.JLOptions)
    @ Base ./client.jl:326
 [27] _start()
    @ Base ./client.jl:556
in expression starting at /home/nsajko/.julia/packages/GPUCompiler/OGnEB/src/precompile.jl:3
in expression starting at /home/nsajko/.julia/packages/GPUCompiler/OGnEB/src/GPUCompiler.jl:1
in expression starting at stdin:
@nsajko
Copy link
Author

nsajko commented Feb 14, 2025

version info:

Julia Version 1.13.0-DEV.54
Commit 75dba048f49 (2025-02-14 04:02 UTC)
Build Info:
  Official https://julialang.org release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 8 × AMD Ryzen 3 5300U with Radeon Graphics
  WORD_SIZE: 64
  LLVM: libLLVM-18.1.7 (ORCJIT, znver2)
  GC: Built with stock GC
Threads: 1 default, 1 interactive, 1 GC (on 8 virtual cores)
Environment:
  JULIA_NUM_PRECOMPILE_TASKS = 4
  JULIA_PKG_PRECOMPILE_AUTO = 0

@eschnett
Copy link
Contributor

Fails also on Julia 1.12-nightly.

@christiangnrd
Copy link
Contributor

Bisected to JuliaLang/julia#57226

@miniskar
Copy link

Hi, I am wondering whether this issue is resolved. I am still getting this error.

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

No branches or pull requests

4 participants