Table of Contents

Class MetalAcceleratorOptions

Namespace
DotCompute.Backends.Metal.Accelerators
Assembly
DotCompute.Backends.Metal.dll

Configuration options for the Metal accelerator.

public class MetalAcceleratorOptions
Inheritance
MetalAcceleratorOptions
Inherited Members

Properties

CommandBufferCacheSize

Gets or sets the command buffer cache size. Default is 16.

public int CommandBufferCacheSize { get; set; }

Property Value

int

EnableFastMath

Gets or sets whether to enable fast math optimizations. Fast math trades precision for performance in floating-point operations. Default is true.

public bool EnableFastMath { get; set; }

Property Value

bool

EnableGpuFamilySpecialization

Gets or sets whether to enable GPU family specialization. Default is true.

public bool EnableGpuFamilySpecialization { get; set; }

Property Value

bool

EnableMetalPerformanceShaders

Gets or sets whether to enable Metal Performance Shaders. Default is true.

public bool EnableMetalPerformanceShaders { get; set; }

Property Value

bool

EnableMetrics

Gets or sets whether to enable performance metrics collection. When enabled, detailed performance metrics are tracked. Default is false (to minimize overhead).

public bool EnableMetrics { get; set; }

Property Value

bool

EnableValidation

Gets or sets whether to enable validation mode. When enabled, additional validation checks are performed. Default is true.

public bool EnableValidation { get; set; }

Property Value

bool

MaxMemoryAllocation

Gets or sets the maximum memory allocation size. Default is 4GB.

public long MaxMemoryAllocation { get; set; }

Property Value

long

MaxThreadgroupSize

Gets or sets the maximum threadgroup size. Default is 1024.

public int MaxThreadgroupSize { get; set; }

Property Value

int

PreferIntegratedGpu

Gets or sets whether to prefer integrated GPUs. Default is false (prefer discrete GPUs).

public bool PreferIntegratedGpu { get; set; }

Property Value

bool