diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2019-01-03 10:10:47 +0100 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2019-02-22 09:21:24 +0000 |
commit | a075f064f0d8a0bb9d467a813ef2eacf39453ec2 (patch) | |
tree | 6f8a52b1b2c7cbe1f303ac8453579ecf42d0d7b6 | |
parent | b237f38e89016b40861de1e0675dc2ba5b3f361a (diff) |
Set OptimalParallelJobCount to at most 4
Profiling reveals that on fast cpus, having more jobs is counter productive.
Set it to at most 4 as it seems to be a good all around values while waiting
to fine tune it later on based on platform and hardware.
Change-Id: I95033e34f10d7f37dfafe0b21c6724466eb78fae
Reviewed-by: Mike Krus <mike.krus@kdab.com>
-rw-r--r-- | src/render/renderers/opengl/renderer/renderviewbuilder.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/render/renderers/opengl/renderer/renderviewbuilder.cpp b/src/render/renderers/opengl/renderer/renderviewbuilder.cpp index c256337db..d3d2d2dc4 100644 --- a/src/render/renderers/opengl/renderer/renderviewbuilder.cpp +++ b/src/render/renderers/opengl/renderer/renderviewbuilder.cpp @@ -47,7 +47,10 @@ namespace Qt3DRender { namespace Render { -const int RenderViewBuilder::m_optimalParallelJobCount = std::max(QThread::idealThreadCount(), 2); +// In some cases having less jobs is better (especially on fast cpus where +// splitting just adds more overhead). Ideally, we should try to set the value +// depending on the platform/CPU/nbr of cores +const int RenderViewBuilder::m_optimalParallelJobCount = std::max(std::min(4, QThread::idealThreadCount()), 2); namespace { |