GPU and CPU give different results for the same trajectory

I have a pick and place task defined and I am using a motion planner to get trajectories to perform the task. When I run this on the cpu physix I have no issues and the robot arm is able to pick up the block and place it on another block. However, when I run the same trajectory on the gpu physix it results in weird behavior. The only difference between the videos I have below is whether or not I’m using the gpu physix.
It is also worth noting that when the robot is in free space there is not an issue, it is only after grasping the block that this issue begins to occur.
I have tested the robot mesh to see if it watertight and it appears to be so. I don’t have this same issue if I use the franka panda environment defined in IsaacGymEnvs. Is this an issue with the mesh/urdf I am using? I don’t understand why using the gpu would give such different results.

On the CPU:

On the GPU:

We might be observing some similar questions.

I am indeed curious as to why this is the case in my case GPU performance is also worse.

Yeah it might be. It’s kind of hard to tell. I am assuming that it’s some weird issue with how collisions are treated on the GPU vs CPU, which would lend itself to causing the same problem you are having.

Do you know if collisions are treated differently on the GPU vs CPU? It could be plausible, but I do not have an easy way to verify.

I don’t know of an easy way to verify either, I just suspect that to be the case.