Cross-vendor approaches.
WHAT OPTIONS EXIST
An open standard for heterogeneous computing Compute shaders in graphics interfaces Directive-based approaches annotating existing code Higher-level frameworks abstracting the backend
WHAT THE OPEN STANDARD PROVIDES
Portability across vendors and device types.
WHAT IT COSTS
More verbose code, and typically less mature tooling.
WHAT COMPUTE SHADERS PROVIDE
Computation within a graphics interface, portable wherever that interface runs.
WHAT DIRECTIVE-BASED APPROACHES PROVIDE
Annotating existing code to offload loops, without rewriting.
WHAT THEY SUIT
Existing scientific code, where rewriting is impractical.
WHAT HIGHER-LEVEL FRAMEWORKS PROVIDE
Writing once and targeting several backends.
WHAT TO WEIGH
Portability against performance and tooling maturity.
WHAT MOST MACHINE LEARNING WORK ACTUALLY USES
Frameworks that abstract this entirely.
WHY
Practitioners write at a higher level, and the framework handles the device.
WHAT TO ESTABLISH BEFORE CHOOSING
Whether you will genuinely target several vendors.
WHY
Portability has real cost, and is frequently not used.