Closed Seelengrab closed 2 years ago
We need to use a newer version of GPUCompiler. Would you be able to open a PR for that?
Does GPUCompiler work on master again? Last I tried with that arduino project, it didn't :thinking:
Yes the newest version does
Click me for segfault
``` julia> using MCAnalyzer julia> function mysum(A) acc = zero(eltype(A)) for i in eachindex(A) mark_start() @inbounds acc += A[i] end mark_end() return acc end mysum (generic function with 1 method) julia> analyze(mysum, (Vector{Float64},)) signal (11): Segmentation fault in expression starting at REPL[5]:1 __atomic_add at /usr/include/c++/12.1.0/ext/atomicity.h:71 [inlined] __atomic_add_dispatch at /usr/include/c++/12.1.0/ext/atomicity.h:111 [inlined] _M_add_ref_copy at /usr/include/c++/12.1.0/bits/shared_ptr_base.h:152 [inlined] __shared_count at /usr/include/c++/12.1.0/bits/shared_ptr_base.h:1078 [inlined] __shared_ptr at /usr/include/c++/12.1.0/bits/shared_ptr_base.h:1522 [inlined] shared_ptr at /usr/include/c++/12.1.0/bits/shared_ptr.h:204 [inlined] ThreadSafeContext at /home/sukera/julia/usr/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h:29 [inlined] getContext at /home/sukera/julia/usr/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h:153 [inlined] jl_create_native_impl at /home/sukera/julia/src/aotcompile.cpp:268 compile_method_instance at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/jlgen.jl:361 macro expansion at /home/sukera/.julia/packages/TimerOutputs/LDL7n/src/TimerOutput.jl:252 [inlined] irgen at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/irgen.jl:4 macro expansion at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/driver.jl:149 [inlined] macro expansion at /home/sukera/.julia/packages/TimerOutputs/LDL7n/src/TimerOutput.jl:252 [inlined] macro expansion at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/driver.jl:148 [inlined] #emit_llvm#110 at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/utils.jl:64 unknown function (ip: 0x7f6a56521075) unknown function (ip: 0x7f6a565158a9) unknown function (ip: 0x7f6a56515888) emit_llvm##kw at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/utils.jl:62 [inlined] #codegen#108 at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/driver.jl:58 codegen##kw at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/driver.jl:43 [inlined] #compile#107 at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/driver.jl:39 compile at /home/sukera/.julia/packages/GPUCompiler/I9fZc/src/driver.jl:31 [inlined] #analyze#9 at /home/sukera/.julia/packages/MCAnalyzer/OVaIA/src/MCAnalyzer.jl:81 analyze at /home/sukera/.julia/packages/MCAnalyzer/OVaIA/src/MCAnalyzer.jl:79 analyze at /home/sukera/.julia/packages/MCAnalyzer/OVaIA/src/MCAnalyzer.jl:79 unknown function (ip: 0x7f6a56515cb6) jl_apply at /home/sukera/julia/src/julia.h:1841 [inlined] do_call at /home/sukera/julia/src/interpreter.c:126 eval_value at /home/sukera/julia/src/interpreter.c:215 eval_stmt_value at /home/sukera/julia/src/interpreter.c:166 [inlined] eval_body at /home/sukera/julia/src/interpreter.c:594 jl_interpret_toplevel_thunk at /home/sukera/julia/src/interpreter.c:750 jl_toplevel_eval_flex at /home/sukera/julia/src/toplevel.c:912 jl_toplevel_eval_flex at /home/sukera/julia/src/toplevel.c:856 ijl_toplevel_eval_in at /home/sukera/julia/src/toplevel.c:971 eval at ./boot.jl:370 [inlined] eval_user_input at /home/sukera/julia/usr/share/julia/stdlib/v1.9/REPL/src/REPL.jl:152 repl_backend_loop at /home/sukera/julia/usr/share/julia/stdlib/v1.9/REPL/src/REPL.jl:247 start_repl_backend at /home/sukera/julia/usr/share/julia/stdlib/v1.9/REPL/src/REPL.jl:232 #run_repl#47 at /home/sukera/julia/usr/share/julia/stdlib/v1.9/REPL/src/REPL.jl:369 run_repl at /home/sukera/julia/usr/share/julia/stdlib/v1.9/REPL/src/REPL.jl:355 jfptr_run_repl_50781 at /home/sukera/julia/usr/lib/julia/sys.so (unknown line) #963 at ./client.jl:415 jfptr_YY.963_36620 at /home/sukera/julia/usr/lib/julia/sys.so (unknown line) jl_apply at /home/sukera/julia/src/julia.h:1841 [inlined] jl_f__call_latest at /home/sukera/julia/src/builtins.c:774 run_main_repl at ./client.jl:400 exec_options at ./client.jl:314 _start at ./client.jl:516 jfptr__start_28776 at /home/sukera/julia/usr/lib/julia/sys.so (unknown line) jl_apply at /home/sukera/julia/src/julia.h:1841 [inlined] true_main at /home/sukera/julia/src/jlapi.c:566 jl_repl_entrypoint at /home/sukera/julia/src/jlapi.c:710 main at julia (unknown line) unknown function (ip: 0x7f6a6202928f) __libc_start_main at /usr/lib/libc.so.6 (unknown line) _start at julia (unknown line) Allocations: 7645169 (Pool: 7638107; Big: 7062); GC: 10 Segmentation fault (core dumped) ```The only thing different from a "standard" install is that I've set
USE_SYSTEM_CLS=1
inMake.user
to provide a newer stdlibc++ than what julia had at that time, to make my experiments with Vulkan.jl work.Here's my versioninfo: