public interface MTLComputePipelineState
A handle to compiled code for a compute function.
MTLComputePipelineState is a single compute function. It can only be used with the device that it was created against.
| Modifier and Type | Method and Description |
|---|---|
MTLDevice |
device()
[@property] device
|
MTLFunctionHandle |
functionHandleWithFunction(MTLFunction function)
functionHandleWithFunction:
|
long |
imageblockMemoryLengthForDimensions(MTLSize imageblockDimensions)
imageblockMemoryLengthForDimensions:
|
java.lang.String |
label() |
long |
maxTotalThreadsPerThreadgroup()
[@property] maxTotalThreadsPerThreadgroup
|
MTLComputePipelineState |
newComputePipelineStateWithAdditionalBinaryFunctionsError(NSArray<?> functions,
org.moe.natj.general.ptr.Ptr<NSError> error)
newRenderPipelineStateWithAdditionalBinaryFunctions:stage:
|
MTLIntersectionFunctionTable |
newIntersectionFunctionTableWithDescriptor(MTLIntersectionFunctionTableDescriptor descriptor)
newIntersectionFunctionTableWithDescriptor:
|
MTLVisibleFunctionTable |
newVisibleFunctionTableWithDescriptor(MTLVisibleFunctionTableDescriptor descriptor)
newVisibleFunctionTableWithDescriptor:
|
long |
staticThreadgroupMemoryLength()
[@property] staticThreadgroupMemoryLength
|
boolean |
supportIndirectCommandBuffers()
[@property] supportIndirectCommandBuffers
|
long |
threadExecutionWidth()
[@property] threadExecutionWidth
|
MTLDevice device()
The device this resource was created against. This resource can only be used with this device.
long maxTotalThreadsPerThreadgroup()
The maximum total number of threads that can be in a single compute threadgroup.
long threadExecutionWidth()
For most efficient execution, the threadgroup size should be a multiple of this when executing the kernel.
long imageblockMemoryLengthForDimensions(MTLSize imageblockDimensions)
Returns imageblock memory length for given image block dimensions.
java.lang.String label()
long staticThreadgroupMemoryLength()
The length in bytes of threadgroup memory that is statically allocated.
boolean supportIndirectCommandBuffers()
Tells whether this pipeline state is usable through an Indirect Command Buffer.
MTLFunctionHandle functionHandleWithFunction(MTLFunction function)
Get the function handle for the specified function from the pipeline state.
MTLComputePipelineState newComputePipelineStateWithAdditionalBinaryFunctionsError(NSArray<?> functions, org.moe.natj.general.ptr.Ptr<NSError> error)
Allocate a new compute pipeline state by adding binary functions to this pipeline state.
MTLIntersectionFunctionTable newIntersectionFunctionTableWithDescriptor(MTLIntersectionFunctionTableDescriptor descriptor)
Allocate an intersection function table for the pipeline with the provided descriptor.
MTLVisibleFunctionTable newVisibleFunctionTableWithDescriptor(MTLVisibleFunctionTableDescriptor descriptor)
Allocate a visible function table for the pipeline with the provided descriptor.