summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2014-11-03 10:57:39 +0200
committerTor Lillqvist <tml@collabora.com>2014-11-06 11:49:23 +0200
commitef1cce467728c1fcfd78871990a8b5af09a0fc85 (patch)
treedac33d0e532c41cfbb1b1710a28510c52a259198
parentd6f852ef140d57c82b945fa4ec3954ad9db0a8b1 (diff)
Add a setting for what subset of functions we use OpenCL for
Change-Id: I9ecea99a921a9230fa80f813627db6cdf7ed5875
-rw-r--r--sc/inc/calcconfig.hxx5
-rw-r--r--sc/source/core/tool/calcconfig.cxx6
2 files changed, 9 insertions, 2 deletions
diff --git a/sc/inc/calcconfig.hxx b/sc/inc/calcconfig.hxx
index 277d27a16219..77e944dded6f 100644
--- a/sc/inc/calcconfig.hxx
+++ b/sc/inc/calcconfig.hxx
@@ -11,7 +11,11 @@
#define INCLUDED_SC_INC_CALCCONFIG_HXX
#include "scdllapi.h"
+
+#include <set>
+
#include <formula/grammar.hxx>
+#include <formula/opcode.hxx>
#include <rtl/ustring.hxx>
@@ -46,6 +50,7 @@ struct SC_DLLPUBLIC ScCalcConfig
bool mbOpenCLAutoSelect:1;
OUString maOpenCLDevice;
int mnOpenCLMinimumFormulaGroupSize;
+ std::set<OpCodeEnum> maOpenCLSubsetFunctions;
ScCalcConfig();
diff --git a/sc/source/core/tool/calcconfig.cxx b/sc/source/core/tool/calcconfig.cxx
index 149f15ce9564..8bca2ac5e684 100644
--- a/sc/source/core/tool/calcconfig.cxx
+++ b/sc/source/core/tool/calcconfig.cxx
@@ -16,7 +16,8 @@ ScCalcConfig::ScCalcConfig() :
mbOpenCLEnabled(true),
mbOpenCLSubsetOnly(true),
mbOpenCLAutoSelect(true),
- mnOpenCLMinimumFormulaGroupSize(20)
+ mnOpenCLMinimumFormulaGroupSize(4),
+ maOpenCLSubsetFunctions {ocAverage, ocMax, ocMin, ocSum, ocSumIfs}
{
}
@@ -43,7 +44,8 @@ bool ScCalcConfig::operator== (const ScCalcConfig& r) const
mbOpenCLSubsetOnly == r.mbOpenCLSubsetOnly &&
mbOpenCLAutoSelect == r.mbOpenCLAutoSelect &&
maOpenCLDevice == r.maOpenCLDevice &&
- mnOpenCLMinimumFormulaGroupSize == r.mnOpenCLMinimumFormulaGroupSize;
+ mnOpenCLMinimumFormulaGroupSize == r.mnOpenCLMinimumFormulaGroupSize &&
+ maOpenCLSubsetFunctions == r.maOpenCLSubsetFunctions;
}
bool ScCalcConfig::operator!= (const ScCalcConfig& r) const