Docs / nablatensor-core / com.nablatensor.engine

final class

AadEngines

Discovers AadEngine implementations on the module path and picks one.

Selection is by descending priority among engines that are both available and able to honour the options, so an accelerator wins whenever there is one. A specific engine can be demanded with -Dnablatensor.engine=simd or by calling require(String), which is the intended way to benchmark a backend that would otherwise never be chosen.

Fields

static final String ENGINE_PROPERTY

Methods

static List<AadEngine> discovered()

Every engine on the module path, including unavailable ones.

static List<AadEngine> available(AadOptions options)
static Optional<AadEngine> find(String name, AadOptions options)
static AadEngine require(String name, AadOptions options)

The named engine, or a failure explaining what was found instead.

static AadEngine select(AadOptions options)

Highest-priority usable engine, honouring the engine system property.

static AadExecutable compile(AadTape tape, AadOptions options)