trixi-framework / trixi-framework/libtrixi
Failing precompilation of LibTrixi.jl
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 3
- Forks
- 3
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 1
Description
Currently precompilation of libtrixi does not work on rocinante when starting from scratch. The error is:
Failed to precompile LibTrixi [7e097bd5-a775-4bc1-90b6-ad92bd7220c1] to "./julia-depot/compiled/v1.10/LibTrixi/jl_oEM50J".
[1404813] signal (11.1): Segmentation fault
in expression starting at none:0
opal_hwloc_base_free_topology at /lib/x86_64-linux-gnu/libopen-pal.so.40 (unknown line)
unknown function (ip: 0x7fffdb832d16)
mca_base_framework_close at /lib/x86_64-linux-gnu/libopen-pal.so.40 (unknown line)
opal_finalize at /lib/x86_64-linux-gnu/libopen-pal.so.40 (unknown line)
ompi_mpi_finalize at /lib/x86_64-linux-gnu/libmpi.so (unknown line)
MPI_Finalize at /mnt/ssd/home/bgeihe/MPI_Finalize_MWE/julia-depot/packages/MPI/z2owj/src/api/generated_api.jl:1872 [inlined]
Finalize at /mnt/ssd/home/bgeihe/MPI_Finalize_MWE/julia-depot/packages/MPI/z2owj/src/environment.jl:263
#7 at /mnt/ssd/home/bgeihe/MPI_Finalize_MWE/julia-depot/packages/MPI/z2owj/src/environment.jl:140
unknown function (ip: 0x7fffe0ded907)
_jl_invoke at /cache/build/builder-amdci4-6/julialang/julia-release-1-dot-10/src/gf.c:2894 [inlined]
ijl_apply_generic at /cache/build/builder-amdci4-6/julialang/julia-release-1-dot-10/src/gf.c:3076
_atexit at ./initdefs.jl:426
jfptr__atexit_79296.1 at /mnt/hd1/opt/julia/1.10.0/lib/julia/sys.so (unknown line)
_jl_invoke at /cache/build/builder-amdci4-6/julialang/julia-release-1-dot-10/src/gf.c:2894 [inlined]
ijl_apply_generic at /cache/build/builder-amdci4-6/julialang/julia-release-1-dot-10/src/gf.c:3076
jl_apply at /cache/build/builder-amdci4-6/julialang/julia-release-1-dot-10/src/julia.h:1982 [inlined]
ijl_atexit_hook at /cache/build/builder-amdci4-6/julialang/julia-release-1-dot-10/src/init.c:280
jl_repl_entrypoint at /cache/build/builder-amdci4-6/julialang/julia-release-1-dot-10/src/jlapi.c:732
main at /cache/build/builder-amdci4-6/julialang/julia-release-1-dot-10/cli/loader_exe.c:58
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 0x4010b8)
Allocations: 509656 (Pool: 508643; Big: 1013); GC:
I tried to find a minimal setup: https://github.com/bgeihe/MPI_Finalize_MWE
- A fresh Julia project with dependencies "LibTrixi", "MPIPreferences", "Trixi", "XML2_jll"
- MPIPreferences is the real package and used to switch to system MPI
- XML2_jll also is the real package
- "LibTrixi" is a local (Pkg.develop) package which just does
using Trixi - "Trixi" is a local (Pkg.develop) package which does
module Trixi using MPI using XML2_jll function __init__() provided = MPI.Init(threadlevel = MPI.THREAD_FUNNELED, finalize_atexit = true) end end
Workarounds so far:
- set
finalize_atexit = false - downgrade XML2_jll to v2.11.5+0
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked MPI_Finalize_MWE and the minimal LibTrixi/Trixi setup described in the issue, including MPIPreferences, XML2_jll, and system MPI. Reproduce precompilation from a fresh Julia project on rocinante, then compare behavior with finalize_atexit disabled and XML2_jll v2.11.5+0. Done means fresh LibTrixi precompilation completes without the MPI_Finalize segmentation fault.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100