From def2bcd3f41a36e52b179aa435c5bf29c94dab5e Mon Sep 17 00:00:00 2001 From: Joe Zhao Date: Mon, 18 May 2015 22:22:11 +0800 Subject: added openmp directive --- model/ranksvmtn.cpp | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) (limited to 'model/ranksvmtn.cpp') diff --git a/model/ranksvmtn.cpp b/model/ranksvmtn.cpp index 1414c81..f904fdd 100644 --- a/model/ranksvmtn.cpp +++ b/model/ranksvmtn.cpp @@ -7,7 +7,7 @@ using namespace std; using namespace Eigen; // Main terminating criteria -const int maxiter = 40; // max iteration count +const int maxiter = 50; // max iteration count const double prec=1e-10; // precision // conjugate gradient const double cg_prec=1e-10; // precision @@ -17,14 +17,21 @@ const int ls_maxiter = 10; const double line_prec=1e-10; // precision const double line_turb=1e-15; // purturbation +void cal_Dw(RidList &D,const VectorXd &w, VectorXd &Dw) +{ + int n = D.getSize(); + #pragma omp parallel for + for (int i=0;i &rank,const VectorXd &corr,const VectorXd &alpha,const VectorXd s,VectorXd &Hs) { int n = D.getSize(); int q = D.getqSize(); Hs = VectorXd::Zero(s.rows()); VectorXd Ds(n); - for (int i=0;i &res){ +int RSVMTN::predict(RidList &D, vector &res){ res.clear(); for (int i=0;ifeature).dot(model.weight)); + res.push_back(D.getVec(i).dot(model.weight)); return 0; }; \ No newline at end of file -- cgit v1.2.3-70-g09d2