Skip to content

[Bug]: LLVM Fatal Error: Cannot select FrameIndex<4> In function: func_narrow_phase_convex_specializations_c414_0_kernel_0_serial on AMD GPU #2570

@ZJLi2013

Description

@ZJLi2013

Bug Description

hi, genesis team

many thanks for this great work. I am recently verifing genesis on AMD GPUs, in a simple case with box-box-collision=true, and it has the following runtime errors:

  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/genesis/engine/scene.py", line 857, in build
    self._sim.step()
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/genesis/engine/simulator.py", line 282, in step
    self.rigid_solver.substep(self.cur_substep_local)
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/genesis/engine/solvers/rigid/rigid_solver.py", line 947, in substep
    self._func_constraint_force()
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/genesis/engine/solvers/rigid/rigid_solver.py", line 1029, in _func_constraint_force
    self.collider.detection()
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/genesis/engine/solvers/rigid/collider/collider.py", line 520, in detection
    func_narrow_phase_convex_specializations(
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/quadrants/lang/_quadrants_callable.py", line 96, in __call__
    return self.wrapper.__call__(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/quadrants/lang/kernel_impl.py", line 141, in wrapped_func
    return primal(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/quadrants/lang/kernel.py", line 575, in __call__
    ret = self.launch_kernel(key, kernel_cpp, compiled_kernel_data, *py_args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/quadrants/lang/kernel.py", line 509, in launch_kernel
    raise e from None
  File "/opt/conda/envs/py_3.12/lib/python3.12/site-packages/quadrants/lang/kernel.py", line 504, in launch_kernel
    prog.launch_kernel(compiled_kernel_data, launch_ctx)
RuntimeError: [llvm_context.cpp:operator()@83] LLVM Fatal Error: Cannot select: 0x562cfe212020: i64 = FrameIndex<4>
In function: func_narrow_phase_convex_specializations_c414_0_kernel_0_serial

trace as following

scene.build()
  → sim.step()                           # scene.py:857
    → rigid_solver.substep()             # rigid_solver.py:947
      → _func_constraint_force()         # rigid_solver.py:1029
        → collider.detection()           # collider.py:520
          → func_narrow_phase_convex_specializations()  # narrowphase.py

wonder is it a knonw issue ?

Thanks
David

Steps to Reproduce

If possible, provide a script triggering the bug, e.g.

# code snippet triggering the bug
import genesis as gs
gs.init()
scene = gs.Scene(show_viewer=False)
broken = scene.add_entity(
    gs.morphs.MJCF(file='attachement.xml'),
)
scene.build()

Make sure to attached any needed assets (here attachement.xml)!

Expected Behavior

should work right on AMD GPUs

Screenshots/Videos

No response

Relevant log output

Environment

  • OS: [e.g. Ubuntu 24.04, Windows 11 24H2]
  • GPU/CPU [e.g. A100, RTX 4090, M3pr, Intel I9-9900k, Ryzen 5900x] (N/A if no GPU/CPU)
  • GPU-driver version (N/A if no GPU)
  • CUDA / CUDA-toolkit version (N/A if non-Nvidia)

Release version or Commit ID

geneiss 0.4.1 & 0.4.3

Additional Context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions