Metal.ComputePipelineStateRepresents a compiled compute pipeline state object. See MTLComputePipelineState.
val sexp_of_t : t -> Sexplib0.Sexp.tval on_device_with_function : 
  Device.t ->
  ?options:PipelineOption.t ->
  ?reflection:bool ->
  Function.t ->
  t * Runtime.Objc.object_t Ctypes.ptrCreates a pipeline state from a function. See newComputePipelineStateWithFunction:options:reflection:error:.
val on_device_with_descriptor : 
  Device.t ->
  ?options:PipelineOption.t ->
  ?reflection:bool ->
  ComputePipelineDescriptor.t ->
  t * Runtime.Objc.object_t Ctypes.ptrCreates a pipeline state from a descriptor. See newComputePipelineStateWithDescriptor:options:reflection:error:.
val get_label : t -> stringval get_max_total_threads_per_threadgroup : t -> intval get_thread_execution_width : t -> intGets the execution width (SIMD group size) for this pipeline.
val get_static_threadgroup_memory_length : t -> intGets the amount of statically allocated threadgroup memory in bytes.
val get_support_indirect_command_buffers : t -> boolChecks if the pipeline supports indirect command buffers.