what does kIOAccelCommandBufferCallbackErrorInvalidResource mean?

I'm getting the following error on Intel Iris integrated graphics. Code works well on newer Mac GPUs as well as Apple GPUs.

Execution of the command buffer was aborted due to an error during execution. Invalid Resource (00000009:kIOAccelCommandBufferCallbackErrorInvalidResource)

The error is for a compute command, not a draw command. The constant isn't in the documentation. All buffers and textures seem to be created successfully. I've also checked that the GPU supports the required threadgroup size for the compute pipeline.

thanks!

  • I had the same error and I was only using skScene/skView. For me this meant that when I was debugging an iOS application from xcode (13.3.1) to iOS 15.4.1 it didn't show the skScene/skView layers. But when running the application on the iPad directly it did (this was not an issue when running iOS 15.3.1).

    The solution was to switch on a scheme option. menu product/scheme, them edit scheme, in run option (left hand panel) then in the Diagnostics tab (right side), check "Metal API validation" option.

    Note - I have no idea why the iOS version update would make this difference, but it worked for me. Hope this helps.

  • I'm also getting this error on a SceneKit app since upgrading to iOS 15.4. When running the code on my iOS 15.4 device, this error triggers, but when running the code on my 15.3 device, nothing happens.

    The error displays upon every successive frame redraw and the polygons in my scene aren't rendering, the whole SceneKit view is frozen. The only thing that's changed is the upgrade to 15.4.

Add a Comment

Replies

I have exactly the same error on a M1 Max (MacBook Pro 16") :

Execution of the command buffer was aborted due to an error during execution. Invalid Resource (00000009:kIOGPUCommandBufferCallbackErrorInvalidResource)

There is no crash, only a slowdown when the log is displayed.