Interface ComputeBackend

All Superinterfaces:
AutoCloseable, LinearAlgebraBackend, SinglePrecisionLinearAlgebraBackend
All Known Implementing Classes:
CpuComputeBackend

Optional backend for vector, dense-linear-algebra, and batched likelihood work.
  • Method Details

    • id

      String id()
    • selectedBackend

      default String selectedBackend()
      Concrete provider used for accelerated work; differs from id() for AUTO routing.
    • automaticRouting

      default boolean automaticRouting()
      Whether individual operations may route between CPU and the selected provider.
    • available

      boolean available()
    • capabilities

      ComputeCapabilities capabilities()
    • deviceInfo

      default ComputeDeviceInfo deviceInfo()
      Returns stable backend, runtime, driver, and device provenance where available.
    • plan

      default ExecutionPlan plan(LinearAlgebraOperation operation, NumericPrecision precision, int... dimensions)
      Predicts execution for the supplied operation and dimensions without running it.
    • prepareDpotrf

      default PreparedCholesky prepareDpotrf(double[] matrix, int dimension)
      Prepares a reusable FP64 Cholesky factor and solve handle.
    • prepareSpotrf

      default PreparedFloatCholesky prepareSpotrf(float[] matrix, int dimension)
      Prepares a reusable FP32 Cholesky factor and solve handle.
    • unary

      default double[] unary(UnaryOperation operation, double[] input)
    • axpy

      default double[] axpy(double alpha, double[] x, double[] y)
    • dot

      default double dot(double[] x, double[] y)
    • matrixMultiply

      default double[][] matrixMultiply(double[][] left, double[][] right)
    • prepareTransposeProduct

      default PreparedTransposeProduct prepareTransposeProduct(double[][] matrix)
      Keeps a reusable row-by-feature matrix ready for repeated X'v batches.
    • logisticRegression

      default LogisticRegressionBatchResult logisticRegression(double[][] design, double[] outcomes, double[][] states, double priorPrecision)
    • prepareLogisticRegression

      default PreparedLogisticRegression prepareLogisticRegression(double[][] design, double[] outcomes)
      Keeps reusable data in backend-optimal storage when the backend supports it.
    • close

      void close()
      Specified by:
      close in interface AutoCloseable