From 3f82e644c40def869a5b5d294573982cec7b057c Mon Sep 17 00:00:00 2001 From: Samuel Fadel Date: Mon, 18 Jan 2016 17:34:07 +0100 Subject: ProjectionObserver & dist(): using more cores in computations. --- dist.cpp | 1 + projectionobserver.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/dist.cpp b/dist.cpp index 422aa10..0a241ec 100644 --- a/dist.cpp +++ b/dist.cpp @@ -10,6 +10,7 @@ arma::mat mp::dist(const arma::mat &X, mp::DistFunc dfunc) arma::uword n = X.n_rows; arma::mat D(n, n, arma::fill::zeros); + #pragma omp parallel for shared(X, D) for (arma::uword i = 0; i < n; i++) { for (arma::uword j = 0; j < i; j++) { D(i, j) = dfunc(X.row(i), X.row(j)); diff --git a/projectionobserver.cpp b/projectionobserver.cpp index 33869a8..781aba9 100644 --- a/projectionobserver.cpp +++ b/projectionobserver.cpp @@ -9,6 +9,7 @@ static void aggregatedError(const arma::mat &distX, const arma::mat &distY, arma double maxX = distX.max(); double maxY = distY.max(); + #pragma omp parallel for shared(maxX, maxY, distX, distY, v) for (arma::uword i = 0; i < v.n_elem; i++) { v[i] = 0; for (arma::uword j = 0; j < v.n_elem; j++) { -- cgit v1.2.3