MPS API allows to run kernels in MTLCommandBuffer
but is it possible to create MTLComputeCommandEncoder
and run several kernels in it without creating a separate encoder for each kernel under the hood?
Something like:
// Create Command Buffer
// Create Encoder
kernel1.encode(encoder: encoder, sourceTexture: source, destinationTexture: k1Destination)
kernel2.encode(encoder: encoder, sourceTexture: k1Destination, destinationTexture: destination)
encoder.endEncoding()
commandBuffer.commit()