From 842c2380502bcb8586df0415fb50d4d633f05eba Mon Sep 17 00:00:00 2001 From: Josh Andler Date: Wed, 21 Jul 2010 12:41:17 -0700 Subject: [PATCH] OpenMP fix for Linux & OS X --- configure.ac | 1 + src/display/nr-filter-gaussian.cpp | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 830542910..b3c9fd06a 100644 --- a/configure.ac +++ b/configure.ac @@ -192,6 +192,7 @@ if test "x$openmp_ok" = "xyes"; then dnl We have it, now set up the flags CXXFLAGS="$CXXFLAGS $OPENMP_CXXFLAGS" AC_CHECK_HEADER(omp.h) + AC_DEFINE(HAVE_OPENMP, 1, [Use OpenMP]) fi dnl ****************************** diff --git a/src/display/nr-filter-gaussian.cpp b/src/display/nr-filter-gaussian.cpp index 9509eaef7..a45e838da 100644 --- a/src/display/nr-filter-gaussian.cpp +++ b/src/display/nr-filter-gaussian.cpp @@ -590,7 +590,8 @@ int FilterGaussian::render(FilterSlot &slot, FilterUnits const &units) double const deviation_y_org = _deviation_y * trans.expansionY(); int const PC = NR_PIXBLOCK_BPP(in); #if HAVE_OPENMP - int const NTHREADS = std::max(1,std::min(8, Inkscape::Preferences::get()->getInt("/options/threading/numthreads", omp_get_num_procs()))); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + int const NTHREADS = prefs->getIntLimited("/options/threading/numthreads", omp_get_num_procs(), 1, 256); #else int const NTHREADS = 1; #endif // HAVE_OPENMP -- 2.30.2