Class BLAS

Object
org.apache.spark.mllib.linalg.BLAS

public class BLAS extends Object
BLAS routines for MLlib's vectors and matrices.
  • Constructor Details

    • BLAS

      public BLAS()
  • Method Details

    • axpy

      public static void axpy(double a, Vector x, Vector y)
      y += a * x
      Parameters:
      a - (undocumented)
      x - (undocumented)
      y - (undocumented)
    • dot

      public static double dot(Vector x, Vector y)
      dot(x, y)
      Parameters:
      x - (undocumented)
      y - (undocumented)
      Returns:
      (undocumented)
    • copy

      public static void copy(Vector x, Vector y)
      y = x
      Parameters:
      x - (undocumented)
      y - (undocumented)
    • scal

      public static void scal(double a, Vector x)
      x = a * x
      Parameters:
      a - (undocumented)
      x - (undocumented)
    • spr

      public static void spr(double alpha, Vector v, DenseVector U)
      Adds alpha * v * v.t to a matrix in-place. This is the same as BLAS's ?SPR.

      Parameters:
      U - the upper triangular part of the matrix in a DenseVector(column major)
      alpha - (undocumented)
      v - (undocumented)
    • spr

      public static void spr(double alpha, Vector v, double[] U)
      Adds alpha * v * v.t to a matrix in-place. This is the same as BLAS's ?SPR.

      Parameters:
      U - the upper triangular part of the matrix packed in an array (column major)
      alpha - (undocumented)
      v - (undocumented)
    • syr

      public static void syr(double alpha, Vector x, DenseMatrix A)
      A := alpha * x * x^T^ + A
      Parameters:
      alpha - a real scalar that will be multiplied to x * x^T^.
      x - the vector x that contains the n elements.
      A - the symmetric matrix A. Size of n x n.
    • gemm

      public static void gemm(double alpha, Matrix A, DenseMatrix B, double beta, DenseMatrix C)
      C := alpha * A * B + beta * C
      Parameters:
      alpha - a scalar to scale the multiplication A * B.
      A - the matrix A that will be left multiplied to B. Size of m x k.
      B - the matrix B that will be left multiplied by A. Size of k x n.
      beta - a scalar that can be used to scale matrix C.
      C - the resulting matrix C. Size of m x n. C.isTransposed must be false.
    • gemv

      public static void gemv(double alpha, Matrix A, Vector x, double beta, DenseVector y)
      y := alpha * A * x + beta * y
      Parameters:
      alpha - a scalar to scale the multiplication A * x.
      A - the matrix A that will be left multiplied to x. Size of m x n.
      x - the vector x that will be left multiplied by A. Size of n x 1.
      beta - a scalar that can be used to scale vector y.
      y - the resulting vector y. Size of m x 1.
    • org$apache$spark$internal$Logging$$log_

      public static org.slf4j.Logger org$apache$spark$internal$Logging$$log_()
    • org$apache$spark$internal$Logging$$log__$eq

      public static void org$apache$spark$internal$Logging$$log__$eq(org.slf4j.Logger x$1)