Package apple.metal.protocol
Interface MTLComputePipelineState
-
public interface MTLComputePipelineState[@protocol] 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. API-Since: 8.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description @NotNull MTLDevicedevice()[@property] device The device this resource was created against.@Nullable MTLFunctionHandlefunctionHandleWithFunction(@NotNull MTLFunction function)functionHandleWithFunction: Get the function handle for the specified function from the pipeline state.MTLResourceIDgpuResourceID()[@property] gpuResourceID Handle of the GPU resource suitable for storing in an Argument Buffer API-Since: 16.0longimageblockMemoryLengthForDimensions(MTLSize imageblockDimensions)imageblockMemoryLengthForDimensions: Returns imageblock memory length for given image block dimensions.@Nullable java.lang.Stringlabel()API-Since: 11.0longmaxTotalThreadsPerThreadgroup()[@property] maxTotalThreadsPerThreadgroup The maximum total number of threads that can be in a single compute threadgroup.@Nullable MTLComputePipelineStatenewComputePipelineStateWithAdditionalBinaryFunctionsError(@NotNull NSArray<?> functions, @Nullable org.moe.natj.general.ptr.Ptr<NSError> error)newRenderPipelineStateWithAdditionalBinaryFunctions:stage: Allocate a new compute pipeline state by adding binary functions to this pipeline state.@Nullable MTLIntersectionFunctionTablenewIntersectionFunctionTableWithDescriptor(@NotNull MTLIntersectionFunctionTableDescriptor descriptor)newIntersectionFunctionTableWithDescriptor: Allocate an intersection function table for the pipeline with the provided descriptor.@Nullable MTLVisibleFunctionTablenewVisibleFunctionTableWithDescriptor(@NotNull MTLVisibleFunctionTableDescriptor descriptor)newVisibleFunctionTableWithDescriptor: Allocate a visible function table for the pipeline with the provided descriptor.longstaticThreadgroupMemoryLength()[@property] staticThreadgroupMemoryLength The length in bytes of threadgroup memory that is statically allocated.booleansupportIndirectCommandBuffers()[@property] supportIndirectCommandBuffers Tells whether this pipeline state is usable through an Indirect Command Buffer.longthreadExecutionWidth()[@property] threadExecutionWidth For most efficient execution, the threadgroup size should be a multiple of this when executing the kernel.
-
-
-
Method Detail
-
device
@NotNull @NotNull MTLDevice device()
[@property] device The device this resource was created against. This resource can only be used with this device.
-
maxTotalThreadsPerThreadgroup
long maxTotalThreadsPerThreadgroup()
[@property] maxTotalThreadsPerThreadgroup The maximum total number of threads that can be in a single compute threadgroup.
-
threadExecutionWidth
long threadExecutionWidth()
[@property] threadExecutionWidth For most efficient execution, the threadgroup size should be a multiple of this when executing the kernel.
-
imageblockMemoryLengthForDimensions
long imageblockMemoryLengthForDimensions(MTLSize imageblockDimensions)
imageblockMemoryLengthForDimensions: Returns imageblock memory length for given image block dimensions. API-Since: 11.0
-
label
@Nullable @Nullable java.lang.String label()
API-Since: 11.0
-
staticThreadgroupMemoryLength
long staticThreadgroupMemoryLength()
[@property] staticThreadgroupMemoryLength The length in bytes of threadgroup memory that is statically allocated. API-Since: 11.0
-
supportIndirectCommandBuffers
boolean supportIndirectCommandBuffers()
[@property] supportIndirectCommandBuffers Tells whether this pipeline state is usable through an Indirect Command Buffer. API-Since: 13.0
-
functionHandleWithFunction
@Nullable @Nullable MTLFunctionHandle functionHandleWithFunction(@NotNull @NotNull MTLFunction function)
functionHandleWithFunction: Get the function handle for the specified function from the pipeline state. API-Since: 14.0
-
newComputePipelineStateWithAdditionalBinaryFunctionsError
@Nullable @Nullable MTLComputePipelineState newComputePipelineStateWithAdditionalBinaryFunctionsError(@NotNull @NotNull NSArray<?> functions, @Nullable @Nullable org.moe.natj.general.ptr.Ptr<NSError> error)
newRenderPipelineStateWithAdditionalBinaryFunctions:stage: Allocate a new compute pipeline state by adding binary functions to this pipeline state. API-Since: 14.0
-
newIntersectionFunctionTableWithDescriptor
@Nullable @Nullable MTLIntersectionFunctionTable newIntersectionFunctionTableWithDescriptor(@NotNull @NotNull MTLIntersectionFunctionTableDescriptor descriptor)
newIntersectionFunctionTableWithDescriptor: Allocate an intersection function table for the pipeline with the provided descriptor. API-Since: 14.0
-
newVisibleFunctionTableWithDescriptor
@Nullable @Nullable MTLVisibleFunctionTable newVisibleFunctionTableWithDescriptor(@NotNull @NotNull MTLVisibleFunctionTableDescriptor descriptor)
newVisibleFunctionTableWithDescriptor: Allocate a visible function table for the pipeline with the provided descriptor. API-Since: 14.0
-
gpuResourceID
MTLResourceID gpuResourceID()
[@property] gpuResourceID Handle of the GPU resource suitable for storing in an Argument Buffer API-Since: 16.0
-
-