88 int dbdivg_mic(
const int m,
const int n,
const int k,
const double *A,
double *W,
double *H,
const double expo,
const int uType,
const int nIter)
92 #ifdef With_MICOffload 93 #pragma offload target(mic:0) \ 94 in(m,n,k,expo,nIter) \ 96 inout(W:length(m*k)) \ 97 inout(H:length(k*n)) \ 104 error =
dbdivg_cpu(m, n, k, A, W, H, expo, uType, nIter);
106 #ifdef With_MICOffload 128 int sbdivg_mic(
const int m,
const int n,
const int k,
const float *A,
float *W,
float *H,
const float expo,
const int uType,
const int nIter)
132 #ifdef With_MICOffload 133 #pragma offload target(mic:0) \ 134 in(m,n,k,expo,nIter) \ 136 inout(W:length(m*k)) \ 137 inout(H:length(k*n)) \ 144 error =
sbdivg_cpu(m, n, k, A, W, H, expo, uType, nIter);
146 #ifdef With_MICOffload 195 int dbdivone_mic(
const int m,
const int n,
const int k,
const double *A,
double *W,
double *H,
const int uType,
const int nIter)
199 #ifdef With_MICOffload 200 #pragma offload target(mic:0) \ 203 inout(W:length(m*k)) \ 204 inout(H:length(k*n)) \ 213 #ifdef With_MICOffload 234 int sbdivone_mic(
const int m,
const int n,
const int k,
const float *A,
float *W,
float *H,
const int uType,
const int nIter)
238 #ifdef With_MICOffload 239 #pragma offload target(mic:0) \ 242 inout(W:length(m*k)) \ 243 inout(H:length(k*n)) \ 252 #ifdef With_MICOffload 274 int dbdiv_mic(
const int m,
const int n,
const int k,
const double *A,
double *W,
double *H,
const double beta,
const int uType,
const int nIter)
276 if ((beta < 0.0) || (nIter <= 0))
279 if(beta>=2.0 && beta<=2.0)
280 return dmlsa_mic(m, n, k, A, W, H, uType, nIter);
283 if(beta>=1.0 && beta<=1.0)
286 return dbdivg_mic(m, n, k, A, W, H, beta, uType, nIter);
304 int sbdiv_mic(
const int m,
const int n,
const int k,
const float *A,
float *W,
float *H,
const float beta,
const int uType,
const int nIter)
306 if ((beta < 0.0) || (nIter <= 0))
309 if(beta>=2.0 && beta<=2.0)
310 return smlsa_mic(m, n, k, A, W, H, uType, nIter);
313 if(beta>=1.0 && beta<=1.0)
316 return sbdivg_mic(m, n, k, A, W, H, beta, uType, nIter);
int sbdivg_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const float expo, const int uType, const int nIter)
sbdivg_mic performs NNMF using betadivergence for general case (beta <> 1 and 2) using simple precisi...
Header file for using the betadivergence functions with MIC/MIC.
int sbdiv_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const float beta, const int uType, const int nIter)
int dbdivg_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const double expo, const int uType, const int nIter)
dbdivg_mic performs the NNMF using beta-divergence when beta is != 1 and !=2, using double precision ...
int smlsa_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const int uType, const int nIter)
smlsa_mic performs NNMF using betadivergence when beta=2 using simple precision
int dbdivone_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const int uType, const int nIter)
dbdivone_mic performs NNMF using betadivergence when beta=1 using double precision ...
int dbdivone_cpu(const int m, const int n, const int k, const double *A, double *W, double *H, const int uType, const int nIter)
dbdivone_cpu performs NNMF using beta-divergence when beta=1, using double precision ...
int sbdivg_cpu(const int m, const int n, const int k, const float *A, float *W, float *H, const float expo, const int uType, int nIter)
sbdivg_cpu performs NNMF using betadivergence for general case (beta <> 1 and 2) using simple precisi...
int dbdivg_cpu(const int m, const int n, const int k, const double *A, double *W, double *H, const double expo, const int uType, int nIter)
dbdivg_cpu performs the NNMF using beta-divergence when beta is != 1 and !=2, using double precision...
int sbdivone_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const int uType, const int nIter)
sbdivone_mic performs NNMF using betadivergence when beta=1 using simple precision ...
int dbdiv_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const double beta, const int uType, const int nIter)
dbdiv_mic is a wrapper that calls the adequate function to performs NNMF using betadivergence using d...
int sbdivone_cpu(const int m, const int n, const int k, const float *A, float *W, float *H, const int uType, const int nIter)
sbdivone_cpu performs NNMF using betadivergence when beta=1 using simple precision ...
int dmlsa_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const int uType, const int nIter)
dmlsa_mic performs NNMF using betadivergence when beta=2 using double precision