@Override protected void stpmv(char order, char Uplo, char TransA, char Diag, int N, INDArray Ap, INDArray X, int incX) { float[] xData = getFloatData(X); BLAS.getInstance().stpmv(String.valueOf(Uplo),String.valueOf(TransA),String.valueOf(Diag),N,getFloatData(Ap),getBlasOffset(Ap),xData,getBlasOffset(X),incX); setData(xData,X); }
@Override protected void stpsv(char order, char Uplo, char TransA, char Diag, int N, INDArray Ap, INDArray X, int incX) { float[] xData = getFloatData(X); BLAS.getInstance().stpsv(String.valueOf(Uplo),String.valueOf(TransA),String.valueOf(Diag),N,getFloatData(Ap),getBlasOffset(Ap),xData,getBlasOffset(X),incX); setData(xData,X); }
@Override protected void sgbmv(char order, char TransA, int M, int N, int KL, int KU, float alpha, INDArray A, int lda, INDArray X, int incX, float beta, INDArray Y, int incY) { float[] yData = getFloatData(Y); BLAS.getInstance().sgbmv(String.valueOf(TransA),M,N,KL,KU,alpha,getFloatData(A),getBlasOffset(A),lda,getFloatData(X),getBlasOffset(X),incX,beta,yData,getBlasOffset(Y),incY); setData(yData,Y); }
@Override protected void ssyr2(char order, char Uplo, int N, float alpha, INDArray X, int incX, INDArray Y, int incY, INDArray A, int lda) { float[] aData = getFloatData(A); BLAS.getInstance().ssyr2(String.valueOf(Uplo),N,alpha,getFloatData(X),getBlasOffset(X),incY,getFloatData(Y),getBlasOffset(Y),incY,aData,getBlasOffset(A),lda); setData(aData,A); }
@Override protected void dsbmv(char order, char Uplo, int N, int K, double alpha, INDArray A, int lda, INDArray X, int incX, double beta, INDArray Y, int incY) { double[] yData = getDoubleData(Y); BLAS.getInstance().dsbmv(String.valueOf(Uplo),N,K,alpha,getDoubleData(A),getBlasOffset(A),lda,getDoubleData(X),getBlasOffset(X),incX,beta,yData,getBlasOffset(Y),incY); setData(yData,Y); }
@Override protected void drotm(int N, INDArray X, int incX, INDArray Y, int incY, INDArray P) { double[] pData = getDoubleData(P); BLAS.getInstance().drotm(N,getDoubleData(X),getBlasOffset(X),incX,getDoubleData(Y),getBlasOffset(Y),incY,pData,getBlasOffset(P)); setData(pData,P); }
@Override protected void zswap(int N, IComplexNDArray X, int incX, IComplexNDArray Y, int incY) { double[] yData = getDoubleData(Y); NativeBlas.zswap(N,getDoubleData(X),getBlasOffset(X),incX,yData,getBlasOffset(Y),incY); setData(yData, Y); }
@Override protected void zcopy(int N, IComplexNDArray X, int incX, IComplexNDArray Y, int incY) { double[] yData = getDoubleData(Y); NativeBlas.zcopy(N,getDoubleData(X),getBlasOffset(X),incX,yData,getBlasOffset(Y),incY); setData(yData,Y); }
@Override protected void scopy(int N, INDArray X, int incX, INDArray Y, int incY) { float[] yData = getFloatData(Y); BLAS.getInstance().scopy(N, getFloatData(X), getBlasOffset(X), incX, yData, getBlasOffset(Y), incY); setData(yData,Y); }
@Override protected void saxpy(int N, float alpha, INDArray X, int incX, INDArray Y, int incY) { float[] yData = getFloatData(Y); BLAS.getInstance().saxpy(N, alpha, getFloatData(X), getBlasOffset(X), incX, yData, getBlasOffset(Y), incY); setData(yData, Y); }
@Override protected void cgeru(char order, int M, int N, IComplexFloat alpha, IComplexNDArray X, int incX, IComplexNDArray Y, int incY, IComplexNDArray A, int lda) { X = (IComplexNDArray) Shape.toOffsetZero(X); Y = (IComplexNDArray) Shape.toOffsetZero(Y); A = (IComplexNDArray) Shape.toOffsetZero(A); float[] aData = getFloatData(A); NativeBlas.cgeru(M, N, JblasComplex.getComplexFloat(alpha), getFloatData(X), getBlasOffset(X), incX, getFloatData(Y), getBlasOffset(Y), incY, aData, getBlasOffset(A), lda); setData(aData,A); }
@Override protected int izamax(int N, IComplexNDArray X, int incX) { X = (IComplexNDArray) Shape.toOffsetZero(X); return NativeBlas.izamax(N, getDoubleData(X), getBlasOffset(X), incX); }
@Override protected double dzasum(int N, IComplexNDArray X, int incX) { X = (IComplexNDArray) Shape.toOffsetZero(X); return NativeBlas.dzasum(N, getDoubleData(X), getBlasOffset(X), incX); }
@Override protected void sswap(int N, INDArray X, int incX, INDArray Y, int incY) { float[] yData = getFloatData(Y); float[] xData = getFloatData(X); BLAS.getInstance().sswap(N, xData, getBlasOffset(X), incX, yData, getBlasOffset(Y), incY); setData(xData,X); setData(yData,Y); }
@Override protected double dznrm2(int N, IComplexNDArray X, int incX) { X = (IComplexNDArray) Shape.toOffsetZero(X); return NativeBlas.dznrm2(N,getDoubleData(X),getBlasOffset(X),incX); }
@Override protected void zgeru(char order, int M, int N, IComplexDouble alpha, IComplexNDArray X, int incX, IComplexNDArray Y, int incY, IComplexNDArray A, int lda) { X = (IComplexNDArray) Shape.toOffsetZero(X); Y = (IComplexNDArray) Shape.toOffsetZero(Y); A = (IComplexNDArray) Shape.toOffsetZero(A); double[] aData = getDoubleData(A); NativeBlas.zgeru(M,N,JblasComplex.getComplexDouble(alpha),getDoubleData(X),getBlasOffset(X),incX,getDoubleData(Y),getBlasOffset(Y),incY,aData,getBlasOffset(A),A.size(0)); setData(aData,A); }
@Override protected void zdscal(int N, double alpha, IComplexNDArray X, int incX) { X = (IComplexNDArray) Shape.toOffsetZero(X); double[] xData = getDoubleData(X); NativeBlas.zdscal(N,alpha,xData,getBlasOffset(X),incX); setData(xData, X); } }
@Override protected void dscal(int N, double alpha, INDArray X, int incX) { double[] data = getDoubleData(X); BLAS.getInstance().dscal(N, alpha, data, BlasBufferUtil.getBlasOffset(X), incX); setData(data,X); }
@Override protected void drotmg(double d1, double d2, double b1, double b2, INDArray P) { double[] pData = getDoubleData(P); BLAS.getInstance().drotmg(new doubleW(d1),new doubleW(d2),new doubleW(b1),b2,pData,getBlasOffset(P)); setData(pData,P); }
@Override protected void srotmg(float d1, float d2, float b1, float b2, INDArray P) { float[] pData = getFloatData(P); BLAS.getInstance().srotmg(new floatW(d1), new floatW(d2), new floatW(b1), b2, pData, getBlasOffset(P)); setData(pData,P); }