[gate-users] MPI
patrice descourt
patrice.descourt at univ-brest.fr
Thu Oct 27 09:55:17 CEST 2005
Dear Vandana
I currently implement MPI in GEANT4 for GATE.
I implement two ways:
1) each node works separately and in parallel at the event level in
GEANT4, writing their own output files (ROOT, ASCII or Whatever)
2) using TOP-C above MPI to apply master-slaves paradigm : the master
sends an event to compute to a slave which returns the G4HCofThisEvent
of it. This is more cumbersome, not really at marshaling level , but
when you unmarshal the G4HCofThisEvent of this event because
GateCrystalHit has a GateVolumeID which is a vector container of
GateVolumeSelector which contains a pointer to a GateVObjectInserter
which in turn is used in GatePulseAdder to retrieve the
GateVObjectInserter of each GateVolumeSelector. This is to check if the
pulses are in the same physical volume to add their energies.
Unfortunately the pointer information is lost when transmitting from a
slave to the master: each GateObjectInserter of a GateVolumeselector
from a GateVolumeID contained in a GateCrystalHit which has been
calculated by the slave is created ex nihilo on the master so all these
Inserters created from the data transmitted by slaves correspond to
physical volumes on the master but not with the right pointer which is
stored in the GateObjectInserterStore to access the volumes in the
geometry.
So I currently try to reassign correctly the pointer to the
GateVObjectInserter from the data transfered by the slave to the right
pointer in the GateObjectInserterStore of the master so that the
geometrical informations on the hits computed on the slave is rightfully
mapped on the master
Best Regards
P.Descourt
My idea is to use the name of the GateVObjectInserter stored in the
parent class GateNamedObject to identify the right geometrical volume.
I would nevertheless warmly welcome any suggestions.
U650 INSERM,
Laboratoire de Traitement d'Information Medicale (LaTIM),
Equipe 'Quantification en Tomographie d'Emission',
CHU Morvan,
5 avenue Foch,
29609 Brest, France
More information about the Gate-users
mailing list