Hello Dieter, Please note that RadeonSI + ACO combination is very experimental at the moment, so it is expected that some things will break. For this concrete issue, take a look at this MR to see if it helps: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24112
It is of course very possible that there will be other issues after this which will need to be investigated further. In the future, I recommend opening an issue on Mesa GitLab: https://gitlab.freedesktop.org/mesa/mesa/-/issues Best regards, Timur On Tue, 2023-07-11 at 15:09 +0200, Dieter Nützel wrote: > Hello List, > > running clinfo under RUSTICL on my Polaris 20, RX580 explode with ACO > compiler. > > AMD_DEBUG=useaco > > RUSTICL_ENABLE=radeonsi > RUSTICL_FEATURES=fp64 > > > Greetings, > Dieter > > > (gdb) r > Starting program: /usr/bin/clinfo > Downloading separate debug info for system-supplied DSO at > 0x7ffff7fc7000 > [Thread debugging using libthread_db enabled] > Using host libthread_db library "/lib64/libthread_db.so.1". > Downloading separate debug info for > /usr/local/lib64/libRusticlOpenCL.so.1 > [New Thread 0x7fffebfff6c0 (LWP 2435)] > [New Thread 0x7fffeb6bd6c0 (LWP 2436)] > [New Thread 0x7fffeaebc6c0 (LWP 2437)] > [New Thread 0x7fffea6bb6c0 (LWP 2438)] > Number of platforms 1 > Platform Name rusticl > Platform Vendor Mesa/X.org > Platform Version OpenCL 3.0 > Platform Profile FULL_PROFILE > Platform Extensions > cl_khr_byte_addressable_store cl_khr_create_command_queue > cl_khr_extended_versioning cl_khr_icd cl_khr_il_program > cl_khr_spirv_no_integer_wrap_decoration > Platform Extensions with Version > cl_khr_byte_addressable_store > 0x400000 (1.0.0) > > cl_khr_create_command_queue > 0x400000 (1.0.0) > > cl_khr_extended_versioning > 0x400000 (1.0.0) > > cl_khr_icd > 0x400000 (1.0.0) > > cl_khr_il_program > 0x400000 (1.0.0) > > cl_khr_spirv_no_integer_wrap_decoration > 0x400000 (1.0.0) > Platform Numeric Version 0xc00000 (3.0.0) > Platform Extensions function suffix MESA > Platform Host timer resolution 1ns > > Platform Name rusticl > Number of devices 1 > Device Name AMD Radeon RX 580 > Series (polaris10, LLVM 17.0.0git, DRM 3.52, 6.4.2-1.ge2dafc9- > default) > Device Vendor AMD > Device Vendor ID 0x1002 > Device Version OpenCL 3.0 > Device UUID > 00000000-0100-0000-0000-000000000000 > Driver UUID > 414d442d-4d45-5341-2d44-525600000000 > Valid Device LUID No > Device LUID 0000-000000000000 > Device Node Mask 0 > Device Numeric Version 0xc00000 (3.0.0) > Driver Version 23.2.0-devel > (git-0695ead057) > Device OpenCL C Version OpenCL C 1.2 > Device OpenCL C Numeric Version 0x402000 (1.2.0) > Device OpenCL C all versions OpenCL > C > 0xc00000 (3.0.0) > OpenCL > C > 0x402000 (1.2.0) > OpenCL > C > 0x401000 (1.1.0) > OpenCL > C > 0x400000 (1.0.0) > Device OpenCL C features > __opencl_c_integer_dot_product_input_4x8bit_packed > 0x800000 (2.0.0) > > __opencl_c_integer_dot_product_input_4x8bit > 0x800000 (2.0.0) > > __opencl_c_fp64 > 0x400000 (1.0.0) > > __opencl_c_int64 > 0x400000 (1.0.0) > > __opencl_c_images > 0x400000 (1.0.0) > > __opencl_c_3d_image_writes > 0x400000 (1.0.0) > > __opencl_c_subgroups > 0x400000 (1.0.0) > Latest conformance test passed v0000-01-01-00 > Device Type GPU > Device PCI bus info (KHR) PCI-E, > 0000:01:00.0 > Device Profile EMBEDDED_PROFILE > Device Available Yes > Compiler Available Yes > Linker Available Yes > Max compute units 36 > Max clock frequency 1411MHz > Device Partition (core) > Max number of sub-devices 0 > Supported partition types None > Supported affinity domains (n/a) > Max work item dimensions 3 > Max work item sizes 1024x1024x1024 > Max work group size 1024 > Preferred work group size multiple (device) 64 > [New Thread 0x7fffe99796c0 (LWP 2439)] > clinfo: ../src/amd/compiler/aco_instruction_selection_setup.cpp:673: > aco::isel_context aco::setup_isel_context(Program*, unsigned int, > nir_shader* const*, ac_shader_config*, const aco_compiler_options*, > const aco_shader_info*, const ac_shader_args*, bool): Assertion `!"" > "Shader stage not implemented"' failed. > > Thread 4 "clinfo:sh0" received signal SIGABRT, Aborted. > [Switching to Thread 0x7fffeaebc6c0 (LWP 2437)] > __pthread_kill_implementation (threadid=<optimized out>, > signo=signo@entry=6, > no_tid=no_tid@entry=0) at pthread_kill.c:44 > Downloading source file /usr/src/debug/glibc-2.37/nptl/pthread_kill.c > 44 return INTERNAL_SYSCALL_ERROR_P (ret) ? > INTERNAL_SYSCALL_ERRNO (ret) : 0; > (gdb) bt > #0 __pthread_kill_implementation (threadid=<optimized out>, > signo=signo@entry=6, > no_tid=no_tid@entry=0) at pthread_kill.c:44 > #1 0x00007ffff7dfab03 in __pthread_kill_internal (signo=6, > threadid=<optimized out>) > at pthread_kill.c:78 > #2 0x00007ffff7da9226 in __GI_raise (sig=sig@entry=6) at > ../sysdeps/posix/raise.c:26 > #3 0x00007ffff7d91897 in __GI_abort () at abort.c:79 > #4 0x00007ffff7d917ab in __assert_fail_base ( > fmt=0x7ffff7f19b98 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", > assertion=assertion@entry=0x7ffff695b080 "!\"\" \"Shader stage > not > implemented\"", > file=file@entry=0x7ffff695ad30 > "../src/amd/compiler/aco_instruction_selection_setup.cpp", > line=line@entry=673, > function=function@entry=0x7ffff695afc0 "aco::isel_context > aco::setup_isel_context(Program*, unsigned int, nir_shader* const*, > ac_shader_config*, const aco_compiler_options*, const > aco_shader_info*, > const ac_shader_args*, bool)") at assert.c:92 > #5 0x00007ffff7da14b6 in __assert_fail ( > assertion=0x7ffff695b080 "!\"\" \"Shader stage not > implemented\"", > file=0x7ffff695ad30 > "../src/amd/compiler/aco_instruction_selection_setup.cpp", line=673, > function=0x7ffff695afc0 "aco::isel_context > aco::setup_isel_context(Program*, unsigned int, nir_shader* const*, > ac_shader_config*, const aco_compiler_options*, const > aco_shader_info*, > const ac_shader_args*, bool)") at assert.c:101 > #6 0x00007ffff73c8343 in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > #7 0x00007ffff73b3324 in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > #8 0x00007ffff73cb4ac in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > #9 0x00007ffff77431d1 in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > #10 0x00007ffff774056c in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > #11 0x00007ffff7741f06 in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > #12 0x00007ffff76ea021 in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > #13 0x00007ffff6ed284b in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > #14 0x00007ffff6f3bb5d in ?? () from > /usr/local/lib64/libRusticlOpenCL.so.1 > --Type <RET> for more, q to quit, c to continue without paging-- > #15 0x00007ffff7df8c24 in start_thread (arg=<optimized out>) at > pthread_create.c:444 > #16 0x00007ffff7e80510 in clone3 () at > ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 > (gdb) info registers > rax 0x0 0 > rbx 0x985 2437 > rcx 0x7ffff7dfaa7c 140737352018556 > rdx 0x6 6 > rsi 0x985 2437 > rdi 0x97e 2430 > rbp 0x7fffeaebc6c0 0x7fffeaebc6c0 > rsp 0x7fffeaeb8b10 0x7fffeaeb8b10 > r8 0x7fffe0022700 140736951625472 > r9 0x0 0 > r10 0x8 8 > r11 0x246 582 > r12 0x7ffff695ad30 140737330392368 > r13 0x6 6 > r14 0x7ffff695b080 140737330393216 > r15 0x7fffea6bc000 140737126318080 > rip 0x7ffff7dfaa7c 0x7ffff7dfaa7c > <__pthread_kill_implementation+270> > eflags 0x246 [ PF ZF IF ] > cs 0x33 51 > ss 0x2b 43 > ds 0x0 0 > es 0x0 0 > fs 0x0 0 > gs 0x0 0 > (gdb)