[Gate-users] Geant4 10.0 MT and GATE

David Sarrut David.Sarrut at creatis.insa-lyon.fr
Wed Sep 3 07:44:05 CEST 2014


yes, MT is *not* implemented in GATE : it would required some (a lot of ?)
effort to make the code compliant and we agreed in the collaboration that,
at the moment, it is not worth it. Really good speed up can be obtained by
launching several Gate simulation (with different random seed number).

David


On Wed, Sep 3, 2014 at 7:36 AM, Jye Smith <jye.smith at gmail.com> wrote:

> So MT is not yet implemented in Gate with G4 v10?
>
> Thanks for the reply.
> On 3 Sep 2014 15:31, "David Sarrut" <David.Sarrut at creatis.insa-lyon.fr>
> wrote:
>
>> Hello,
>>
>> yes, Gate could yet only be compiled with MT=false.
>>
>> Warning : Gate can be linked with G4 10.0 *only* with the development
>> version of the source code available in git (develop branch), not the
>> official release.
>>
>> If you use both Gate and G4 directly, you may need two compiled versions
>> of G4, with MT=false for Gate and with MT=true for your own G4 simulations
>> that use MT.
>>
>> No other modifications in the macro files.
>>
>> Sincerely,
>> David
>>
>>
>>
>> On Wed, Sep 3, 2014 at 6:00 AM, Jye Smith <jye.smith at gmail.com> wrote:
>>
>>> Hi David,
>>>
>>> Ive just been through the process of installing Gatev7.0 development
>>> with G4v10.00.p02 on a fresh install of Ubuntu server 14 (testing in
>>> virtualbox).
>>>
>>> I complied G4 with "cmake /home/ubuntu/geant4.10.00.p02
>>> -DCMAKE_INSTALL_PREFIX=/home/ubuntu/geant4.10.00.p02-install
>>> -DGEANT4_INSTALL_DATA=OFF "
>>>
>>> Is your comment below about GEANT4_BUILD_MULTITHREADED=false correct or
>>> should it be GEANT4_BUILD_MULTITHREADED=ON for MT?
>>>
>>> Compiling as above with MT=OFF I can only see 1 of 4 CPUs running when
>>> running a simulation. Besides turning MT=ON is there any other changes
>>> required to the macs?
>>>
>>> Cheers
>>> Jye
>>>
>>>
>>> On Thu, Jul 10, 2014 at 3:21 PM, David Sarrut <
>>> David.Sarrut at creatis.insa-lyon.fr> wrote:
>>>
>>>> Hello,
>>>>
>>>> the develop branch of the opengate git repository has been updated :
>>>> Gate is now compatible with Geant4 10.0 (must be compiled
>>>> with GEANT4_BUILD_MULTITHREADED=false).
>>>>
>>>> feedback welcome,
>>>> have fun,
>>>> David
>>>>
>>>>
>>>>
>>>> On Mon, Dec 2, 2013 at 2:37 PM, Marc Verderi <verderi at in2p3.fr> wrote:
>>>>
>>>>> Dear Ian,
>>>>>
>>>>>     Just a few words to let you know about some feature of the Geant4
>>>>> 10.0 MT, and to partly answer your question. Geant4 10.0, which includes
>>>>> this MT capability, will be released in a few days. The MT scheme adopted
>>>>> is to process events (in Geant4 sense) in parallel, each thread dealing
>>>>> with a set of events, and sharing geometry and physics tables among the
>>>>> threads, to minimize the memory footprint.
>>>>>
>>>>>     GATE will certainly need an adaptation. This is of course
>>>>> critical, but requires only a few lines of code. The G4RunManager as to be
>>>>> replaced by the G4MTRunManager. Users' actions (primary generator action,
>>>>> stepping action, event action, and run action if needed) become thread
>>>>> local actions : one instance of each of these actions is instantiated per
>>>>> thread. Sensitive detectors and fields become also thread local, and have
>>>>> to be instantiated in a new method of the detector construction :
>>>>> ConstructSDandField() which is executed once for each thread. In this way,
>>>>> events can be processed independently, in parallel. The overall mechanics
>>>>> is controlled by a master thread, the one launched at the application
>>>>> startup, and which then spawn the slave threads at event loop start.
>>>>>
>>>>>     What will be needed also is an examination of the "static" data
>>>>> members in the GATE classes : some of them would be static as known in the
>>>>> master and slave threads, some others will be static but with a thread
>>>>> local scope and will need some adaptation. Helper classes in the Geant4 MT
>>>>> version exist to help doing an easy transformation of, for example, a
>>>>> singleton to a thread-local singleton.
>>>>>     All these transformations are compatible with a sequential
>>>>> processing (the up-to-now processing), and a MT-compliant code can be
>>>>> compiled as is for a sequential processing (provided the G4RunManager has
>>>>> been chosen).
>>>>>
>>>>>     For information, tests performed on a 61 cores Intel Xeon Phi
>>>>> board allowed to go up to 244 threads (maximum possible number on this
>>>>> platform) for a single realistic application !
>>>>>
>>>>>     Hoping I just whet your appetite ! ;)
>>>>>
>>>>> Best regards,
>>>>> Marc
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On 11/26/2013 03:07 PM, Porter Ian (RBV) NHS Christie Tr wrote:
>>>>>
>>>>>> Hello All,
>>>>>>    My understanding is that the next version of Geant4 (v10.0) will
>>>>>> support multi-threading and will be released to production soon.  We
>>>>>> are
>>>>>> keen to move over to this to avoid using multiple instances of GATE (1
>>>>>> per CPU core) on our cluster.  Can anyone tell me whether GATE will
>>>>>> require an upgrade in order to work with Geant4 MT?  If so, is there a
>>>>>> timescale for the release of the new version?  The last newsletter
>>>>>> mentions GATE v7.0 with GPU support, which was due out by now but has
>>>>>> not yet appeared.  Is this being rewritten with a view to supporting
>>>>>> Geant4 10.0 MT?
>>>>>>
>>>>>> Many Thanks,
>>>>>>    -- Ian.
>>>>>> To download our 20:20 Vision strategy, please visit
>>>>>> http://www.christie.nhs.uk/2020
>>>>>>
>>>>>> This e-mail and any files transmitted with it are confidential and
>>>>>> solely for the use of the intended recipient.
>>>>>> If you have received this e-mail in error you should not disseminate,
>>>>>> distribute or copy it.
>>>>>> Please notify the sender immediately and delete this e-mail from your
>>>>>> system.
>>>>>>
>>>>>> _______________________________________________
>>>>>> Gate-users mailing list
>>>>>> Gate-users at lists.opengatecollaboration.org
>>>>>> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Gate-users mailing list
>>>>> Gate-users at lists.opengatecollaboration.org
>>>>> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> David Sarrut, Phd
>>>> Directeur de recherche CNRS
>>>> CREATIS, UMR CNRS 5220, Inserm U 1044
>>>> Centre de lutte contre le cancer Léon Bérard
>>>> 28 rue Laënnec, 69373 Lyon cedex 08
>>>> Tel : 04 78 78 51 51 / 06 74 72 05 42
>>>> http://www.creatis.insa-lyon.fr/~dsarrut
>>>> _________________________________
>>>>  "2 + 2 = 5,  for extremely large values of 2"
>>>> _________________________________
>>>>
>>>> _______________________________________________
>>>> Gate-users mailing list
>>>> Gate-users at lists.opengatecollaboration.org
>>>> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users
>>>>
>>>
>>>
>>
>>
>> --
>> David Sarrut, Phd
>> Directeur de recherche CNRS
>> CREATIS, UMR CNRS 5220, Inserm U 1044
>> Centre de lutte contre le cancer Léon Bérard
>> 28 rue Laënnec, 69373 Lyon cedex 08
>> Tel : 04 78 78 51 51 / 06 74 72 05 42
>> http://www.creatis.insa-lyon.fr/~dsarrut
>> _________________________________
>>  "2 + 2 = 5,  for extremely large values of 2"
>> _________________________________
>>
>


-- 
David Sarrut, Phd
Directeur de recherche CNRS
CREATIS, UMR CNRS 5220, Inserm U 1044
Centre de lutte contre le cancer Léon Bérard
28 rue Laënnec, 69373 Lyon cedex 08
Tel : 04 78 78 51 51 / 06 74 72 05 42
http://www.creatis.insa-lyon.fr/~dsarrut
_________________________________
 "2 + 2 = 5,  for extremely large values of 2"
_________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20140903/34df806b/attachment-0001.html>


More information about the Gate-users mailing list