2 Replies
      Latest reply on Feb 10, 2020 10:48 PM by y963
      y963 Level 1 Level 1 (0 points)

        Hi,

         

        I have trouble with a Metal based game I developed, in the final testing stage.

         

        In my Mac Pro 2013 (6-core Xeon E5 and AMD FirePro D700 6 GB, macOS Mojave 10.14.6)

        and one of my family's MacBook Pro of older one, no issues has been appered,

        but in one of my family's MacBook Pro 2016 (13inch four thunderbolt ports Iris Graphics 550 macOS Mojave 10.14.6)

        application dumps following errors repeatedly and the game window is blackouted...

         

        Errors:

        -‐‐‐‐‐

        Error: command buffer exited with error status.

          The Metal Performance Shaders operations encoded on it may not have completed.

          Error:

          (null)

          Caused GPU Timeout Error (IOAF code 2)

          <MTLIGAccelCommandBuffer: 0x7f97caf9a640>

            label = <none>

            device = <MTLIGAccelDevice: 0x1106fe000>

                name = Intel(R) Iris(TM) Graphics 550

            commandQueue = <MTLIGAccelCommandQueue: 0x7f97c856fd20>

                label = <none>

                device = <MTLIGAccelDevice: 0x1106fe000>

                    name = Intel(R) Iris(TM) Graphics 550

            retainedReferences = 1

        Error: command buffer exited with error status.

          The Metal Performance Shaders operations encoded on it may not have completed.

          Error:

          (null)

          Ignored (for causing prior/excessive GPU errors) (IOAF code 4)

          <MTLIGAccelCommandBuffer: 0x7f97cadd9410>

            label = <none>

            device = <MTLIGAccelDevice: 0x1106fe000>

                name = Intel(R) Iris(TM) Graphics 550

            commandQueue = <MTLIGAccelCommandQueue: 0x7f97c856fd20>

                label = <none>

                device = <MTLIGAccelDevice: 0x1106fe000>

                    name = Intel(R) Iris(TM) Graphics 550

            retainedReferences = 1

        -‐‐‐‐‐

         

        Is there someone have any ideas?

        Thanks.

         

        -‐‐‐‐‐

        I thought I should ask Developer Technical Support but in there I should not post a issue

        about a pre-release software... So I posted here.

        • Re: Nothing drawn with error on some machine: The Metal Performance Shaders operations encoded on it may not have completed
          y963 Level 1 Level 1 (0 points)

          And, I use the Metal Performance Shader only to blur a luminance texture,

          I use MPS nowhere other than here. Ofcource I use Metal codes for other places.

          ---

                  do {

                      let renderPassDescriptor2 = MTLRenderPassDescriptor()

                      renderPassDescriptor2.colorAttachments[0].texture = mLuminanceOutputTex

                      renderPassDescriptor2.colorAttachments[0].loadAction = .clear

                      renderPassDescriptor2.colorAttachments[0].clearColor = MTLClearColor(red: Double(0.4),

                                                                                           green: Double(0.4),

                                                                                           blue: Double(1.0),

                                                                                           alpha: Double(1.0))          

                    

                      let blur = MPSImageGaussianBlur(device: mMetalDevice, sigma: 10)

                      var mutableTex: MTLTexture = mLuminanceOutputTex

                      _ = withUnsafeMutablePointer(to: &mutableTex) { texturePtr in

                          blur.encode(commandBuffer: cmdBuffer,

                                      inPlaceTexture: texturePtr,

                                      fallbackCopyAllocator: nil)

                      }

                  }

          ---

          Again, no problems on my Mac Pro and one of my family's MBP for this code.