tinygrad/docs/runtime.md

1.7 KiB

Runtimes

tinygrad supports various runtimes, enabling your code to scale across a wide range of devices. The default runtime can be automatically selected based on the available hardware, or you can force a specific runtime to be default using environment variables (e.g., CLANG=1).

Runtime Description Requirements
NV Provides acceleration for NVIDIA GPUs Ampere/Ada series GPUs
AMD Provides acceleration for AMD GPUs RDNA2/RDNA3 series GPUs
QCOM Provides acceleration for QCOM GPUs 6xx series GPUs
METAL Utilizes Metal for acceleration on Apple devices M1+ Macs; Metal 3.0+ for bfloat support
CUDA Utilizes CUDA for acceleration on NVIDIA GPUs NVIDIA GPU with CUDA support
GPU (OpenCL) Accelerates computations using OpenCL on GPUs OpenCL 2.0 compatible device
CLANG (C Code) Runs on CPU using the clang compiler clang compiler in system PATH
LLVM Runs on CPU using the LLVM compiler infrastructure llvmlite package installed