Skip to content

Commit d0ae8cd

Browse files
authored
Merge pull request #3 from murnanedaniel/ddsim-mt-pr-fixes
Remove elif leading to recursion and change shared check strategy
2 parents 0e25341 + 1d3f87e commit d0ae8cd

2 files changed

Lines changed: 5 additions & 4 deletions

File tree

DDG4/python/DDG4.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,8 +157,6 @@ def _getKernelProperty(self, name):
157157
return _evalProperty(ret.data)
158158
elif hasattr(self.get(), name):
159159
return _evalProperty(getattr(self.get(), name))
160-
elif hasattr(self, name):
161-
return _evalProperty(getattr(self, name))
162160
msg = 'Geant4Kernel::GetProperty [Unhandled]: Cannot access Kernel.' + name
163161
raise KeyError(msg)
164162

DDG4/python/DDSim/DD4hepSimulation.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -337,7 +337,9 @@ def __setupActions(self, kernel):
337337
def __setupGeneratorActions(self, kernel, geant4):
338338
import DDG4
339339

340-
shared = (kernel.RunManagerType == "G4MTRunManager")
340+
# Determine 'shared' based on the overall setting, not the worker kernel property
341+
shared = (self.numberOfThreads > 1)
342+
logger.debug(f"Determined shared={shared} based on self.numberOfThreads={self.numberOfThreads}")
341343

342344
actionList = []
343345

@@ -844,7 +846,8 @@ def _buildInputStage(self, geant4, generator_input_modules, output_level=None, h
844846
ga = geant4.kernel().generatorAction()
845847

846848
# Register Generation initialization action
847-
shared = (geant4.kernel().RunManagerType == "G4MTRunManager")
849+
shared = (self.numberOfThreads > 1)
850+
logger.debug(f"Determined shared={shared} based on self.numberOfThreads={self.numberOfThreads}")
848851
gen = GeneratorAction(geant4.kernel(), "Geant4GeneratorActionInit/GenerationInit", shared = shared)
849852
generationInit = gen
850853
if output_level is not None:

0 commit comments

Comments
 (0)