Add a gui control for setting omp threads in fluids

This commit is contained in:
Jens Verwiebe
2013-04-10 18:35:18 +00:00
parent ac224a64f4
commit cbe9ae244e
7 changed files with 19 additions and 2 deletions

View File

@@ -99,6 +99,8 @@ typedef struct elbeemSimulationSettings {
elbeemRunSimulationCallback runsimCallback;
/* pointer passed to runsimCallback for user data storage */
void* runsimUserData;
/* simulation threads used by omp */
int threads;
} elbeemSimulationSettings;

View File

@@ -19,6 +19,10 @@
#include "particletracer.h"
#include "elbeem.h"
#if PARALLEL==1
#include <omp.h>
#endif
#ifdef _WIN32
#else
#include <sys/time.h>
@@ -173,6 +177,7 @@ int SimulationObject::initializeLbmSimulation(ntlRenderGlobals *glob)
mpLbm->initDomainTrafo( mpElbeemSettings->surfaceTrafo );
mpLbm->setSmoothing(1.0 * mpElbeemSettings->surfaceSmoothing, 1.0 * mpElbeemSettings->surfaceSmoothing);
mpLbm->setIsoSubdivs(mpElbeemSettings->surfaceSubdivs);
omp_set_num_threads(mpElbeemSettings->threads);
mpLbm->setSizeX(mpElbeemSettings->resolutionxyz);
mpLbm->setSizeY(mpElbeemSettings->resolutionxyz);
mpLbm->setSizeZ(mpElbeemSettings->resolutionxyz);