Backend Profiles #
Named backend profiles bundle the choices that should move together:
- target/build availability,
- execution configuration,
- capsule registry,
- graph lowering mode,
- and acceptance policy.
This gives downstream APIs one object to pass around instead of separately threading flags such as "CUDA", "LibTorch enabled", "trusted external allowed", and "coalesce adjacent graph nodes".
Which capsule registry a profile uses.
- default : RegistryMode
- withLibTorch : RegistryMode
Instances For
Capsule registry selected by a registry mode.
Instances For
How graph-node plans are lowered to backend execution groups.
- singleton : LoweringMode
- coalesced : LoweringMode
Instances For
One named backend execution profile.
- name : String
- config : ExecutionConfig
- target : Target
- registryMode : RegistryMode
- loweringMode : LoweringMode
- acceptancePolicy : AcceptancePolicy
Instances For
Planner capabilities declared by the profile target; runtime execution probes separately.
Instances For
Capsule registry selected by the profile.
Instances For
Plan operations using the profile registry, target, and execution config.
Instances For
Gate a planned operation sequence under the profile's acceptance policy.
Instances For
Plan runtime-relevant IR nodes using the profile registry, target, and execution config.
Instances For
Lower a graph-node execution plan according to the profile's lowering mode.
Instances For
Plan, lower, and gate a graph under the profile.
Instances For
Maintained portable CPU/reference profile with runtime guards and regression evidence.
Instances For
Checked CPU/reference profile for a named operating system and architecture.
Instances For
Checked native CUDA profile. External trusted providers are not admitted.
Instances For
LibTorch forward scaling profile.
LibTorch is allowed to provide selected forward values, but TorchLean still records the graph/tape boundary and does not hand local backward ownership to LibTorch autograd.
Instances For
Explicit LibTorch autograd scaling profile. Trusted external backward boundaries are visible.
Instances For
Checked macOS CPU/reference profile.
Instances For
Checked Windows CPU/reference profile. Used for CI bring-up before native Windows kernels exist.
Instances For
Construct a named target whose runtime capsules are not implemented yet.
Instances For
Future Metal/MPS profile.
The target and device are named now, but the default registry has no Metal capsules yet. Planning a non-reference op under this profile therefore fails with a missing-capsule error instead of falling back silently to CUDA or CPU.
Instances For
Future ROCm profile. It is a named planning target until HIP/ROCm capsules are added.
Instances For
Future WebGPU/WASM profile. It is a named planning target until WebGPU capsules are added.
Instances For
Future TPU/XLA profile. It is a named planning target until TPU capsules are added.
Instances For
Future AWS Trainium/Neuron profile. It is a named planning target until Neuron capsules exist.
Instances For
Future first-party/lab custom accelerator profile.
Instances For
Future caller-supplied external accelerator profile.