Class MetalCapabilityManager
- Namespace
- DotCompute.Backends.Metal.Configuration
- Assembly
- DotCompute.Backends.Metal.dll
Centralized manager for Metal GPU family detection and feature availability. Handles device capability queries and feature tier detection. This is the single source of truth for Metal capabilities.
public static class MetalCapabilityManager
- Inheritance
-
MetalCapabilityManager
- Inherited Members
Methods
ClearCache()
Clears the cached capabilities, forcing re-detection on next access.
public static void ClearCache()
GetCapabilities()
Gets the Metal GPU family and features for the system default device. This is the SINGLE source of truth for Metal capability detection.
public static MetalCapabilities GetCapabilities()
Returns
GetMaxBufferLength()
Gets the maximum buffer length.
public static long GetMaxBufferLength()
Returns
GetMaxThreadsPerThreadgroup()
Gets the maximum threads per threadgroup.
public static int GetMaxThreadsPerThreadgroup()
Returns
HasUnifiedMemory()
Checks if the device has unified memory (Apple Silicon).
public static bool HasUnifiedMemory()
Returns
SupportsArgumentBuffers()
Checks if argument buffers (Tier 2 feature) are supported.
public static bool SupportsArgumentBuffers()
Returns
SupportsGpuFamily(MetalGpuFamily)
Checks if a specific GPU family is supported.
public static bool SupportsGpuFamily(MetalGpuFamily family)
Parameters
familyMetalGpuFamily