Skip to content
Snippets Groups Projects
Commit ad9c95d5 authored by Martin Bauer's avatar Martin Bauer
Browse files

UniformGridGPU small changes

- MPI barrier between runs
- bugfix in overlap_benchmark config
parent 08644e1e
No related merge requests found
...@@ -56,6 +56,8 @@ int main( int argc, char **argv ) ...@@ -56,6 +56,8 @@ int main( int argc, char **argv )
for( auto cfg = python_coupling::configBegin( argc, argv ); cfg != python_coupling::configEnd(); ++cfg ) for( auto cfg = python_coupling::configBegin( argc, argv ); cfg != python_coupling::configEnd(); ++cfg )
{ {
WALBERLA_MPI_WORLD_BARRIER();
auto config = *cfg; auto config = *cfg;
logging::configureLogging( config ); logging::configureLogging( config );
auto blocks = blockforest::createUniformBlockGridFromConfig( config ); auto blocks = blockforest::createUniformBlockGridFromConfig( config );
......
...@@ -8,13 +8,13 @@ from waLBerla.tools.sqlitedb import sequenceValuesToScalars ...@@ -8,13 +8,13 @@ from waLBerla.tools.sqlitedb import sequenceValuesToScalars
from os import getcwd from os import getcwd
from waLBerla.tools.jobscripts import createJobscript from waLBerla.tools.jobscripts import createJobscript
from datetime import timedelta from datetime import timedelta
from copy import deepcopy
CSV_FILE = "overlap_benchmark.csv" CSV_FILE = "overlap_benchmark.csv"
BASE_CONFIG = { BASE_CONFIG = {
'DomainSetup': { 'DomainSetup': {
'cellsPerBlock': (256, 256, 256), 'cellsPerBlock': (256, 128, 128),
'periodic': (1, 1, 1), 'periodic': (1, 1, 1),
}, },
'Parameters': { 'Parameters': {
...@@ -29,7 +29,7 @@ BASE_CONFIG = { ...@@ -29,7 +29,7 @@ BASE_CONFIG = {
class Scenario: class Scenario:
def __init__(self, **kwargs): def __init__(self, **kwargs):
self.config_dict = BASE_CONFIG.copy() self.config_dict = deepcopy(BASE_CONFIG)
self.config_dict['Parameters'].update(kwargs) self.config_dict['Parameters'].update(kwargs)
self.config_dict['DomainSetup']['blocks'] = block_decomposition(wlb.mpi.numProcesses()) self.config_dict['DomainSetup']['blocks'] = block_decomposition(wlb.mpi.numProcesses())
...@@ -56,14 +56,13 @@ class Scenario: ...@@ -56,14 +56,13 @@ class Scenario:
def overlap_benchmark(): def overlap_benchmark():
scenarios = wlb.ScenarioManager() scenarios = wlb.ScenarioManager()
inner_outer_splits = [(1, 1, 1), (4, 1, 1), (8, 1, 1), (16, 1, 1), (32, 1, 1), (64, 1, 1), inner_outer_splits = [(1, 1, 1), (4, 1, 1), (8, 1, 1), (16, 1, 1), (32, 1, 1),
(4, 4, 1), (8, 8, 1), (16, 16, 1), (32, 32, 1), (64, 64, 1), (4, 4, 1), (8, 8, 1), (16, 16, 1), (32, 32, 1),
(4, 4, 4), (8, 8, 8), (16, 16, 16), (32, 32, 32), (64, 64, 64)] (4, 4, 4), (8, 8, 8), (16, 16, 16), (32, 32, 32)]
for strategy in ['simpleOverlap', 'complexOverlap', 'noOverlap']: scenarios.add(Scenario(timeStepStrategy='noOverlap'))
for strategy in ['simpleOverlap', 'complexOverlap']:
for inner_outer_split in inner_outer_splits: for inner_outer_split in inner_outer_splits:
if strategy == 'noOverlap' and inner_outer_split != (1, 1, 1):
continue
scenario = Scenario(timeStepStrategy=strategy, innerOuterSplit=inner_outer_split) scenario = Scenario(timeStepStrategy=strategy, innerOuterSplit=inner_outer_split)
scenarios.add(scenario) scenarios.add(scenario)
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment