Docs
Supported Platforms
Supported Platforms
macOS
- macOS 14 (2023) or newer
- Macs with M1 chip (2020) or newer (All Apple Silicon Macs)
- Supported in Open-source SDK
iOS
- iOS 17 (2023) or newer
- iPhones with A14 chip (2020) or newer
- Supported in Open-source SDK
iPadOS
- iPadOS 17 (2023) or newer
- iPads with A14 chip (2020) or newer
- iPads with M1 chip (2021) or newer
- Supported in Open-source SDK
Ⓘ
Programmatic Check for Apple Platform Support
import CoreML
private func deviceIsSupportedByArgmaxSDK() -> Bool {
var totalANECores = 0
if #available(macOS 14.0, iOS 17.0, *) {
for device in MLComputeDevice.allComputeDevices {
if case .neuralEngine(let neuralEngine) = device {
totalANECores += neuralEngine.totalCoreCount
}
}
}
// A14 and newer OR M1 and newer
let isSupportedAppleChip = totalANECores >= 16
let isSupportedOS: Bool = {
let processInfo = ProcessInfo.processInfo
let version = processInfo.operatingSystemVersion
#if os(iOS)
// iOS 17 and newer
return version.majorVersion >= 17
#elseif os(macOS)
// macOS 14 and newer
return version.majorVersion >= 14
#else
return false
#endif
}()
return isSupportedAppleChip && isSupportedOS
}Android
- Android 11 (API 30) or newer
- Tested and verified on Qualcomm NPUs starting with Snapdragon 8 Gen 1, including Galaxy S22 (2022) and newer
- Falls back to GPU acceleration on devices without NPU support
- Performance and accuracy on the GPU fallback path may vary by device
Ⓘ
Programmatic Check for Android Platform Support
Use AndroidSoCDetector to detect the device System-on-Chip (SoC) and check whether NPU-accelerated models are available:
val detector = AndroidSoCDetector()
val soc = detector.detectSoC()
if (soc.isNPUSupported()) {
// Qualcomm NPU-accelerated path (Snapdragon 8 Gen 1 and newer)
} else {
// Generic GPU fallback — performance and accuracy may vary
}Windows
Not coming soon