Import Geant4 11.0.0 source tree
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
|
||||
///\file "parallel/TBB/.README.txt"
|
||||
///\brief Examples TBB README page
|
||||
|
||||
/*! \page Examples_tbb Category "parallel/TBB"
|
||||
|
||||
|
||||
TBB directory shows how to integrate Intel Threading Building Block and Geant4
|
||||
to achieve event-level parallelism.
|
||||
|
||||
\link ExampleTBB_B2b TBB/B2b \endlink
|
||||
|
||||
Currently only a preliminary version of one example is provided: it replaces
|
||||
the Geant4 Version 10.0 event-loop parallelism based on pthreads with TBB
|
||||
task-based parallelism. <em> It should not be considered a feature-complete example
|
||||
and it present some limitations (no merging of output, no correct clean-up of
|
||||
heap). </em>
|
||||
|
||||
It will be substantially improved in the future.
|
||||
If you have interest in TBB please
|
||||
refer to Geant4 Multi-threading user-forum (reachable from Geant4 website)
|
||||
where updates on TBB will be communicated or contact example author at:
|
||||
adotti@slac.stanford.edu.
|
||||
|
||||
*/
|
||||
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
|
||||
///\file "parallel/TBB/B2b/.README.txt"
|
||||
///\brief Example TBB/B2b README page
|
||||
|
||||
/*! \page ExampleTBB_B2b Example TBB/B2b
|
||||
|
||||
This example shows how to integrate Intel Threading Building Block and Geant4
|
||||
to achieve event-level parallelism.
|
||||
|
||||
<em>
|
||||
Note that this is a preliminary version which should not be considered a
|
||||
feature-complete example and which presents some limitations (no merging of
|
||||
output, no correct clean-up of heap). It will be substantially improved
|
||||
in 2014.
|
||||
</em>
|
||||
|
||||
This example adds to B2b example, originally provided in basic example,
|
||||
the TBB based classes:
|
||||
|
||||
\section TBB_B2b_s1 tbbMasterRunManager
|
||||
|
||||
tbbMasterRunManager class implements the master model run manager for TBB bases
|
||||
application.
|
||||
|
||||
It is instantiated by user main (or equivalent function) instead
|
||||
of G4[MT]RunManager. It controls the creation of tbb::tasks.
|
||||
See G4MTRunManager for documentation of methods relative to base
|
||||
class. Only class specific methods are documented here.
|
||||
|
||||
\section TBB_B2b_s2 tbbWorkerRunManager
|
||||
|
||||
tbbWorkerRunManager class implements the worker model run manager for TBB based
|
||||
application.
|
||||
|
||||
It is instantiated by tbbUserWorkerInitialization and used by
|
||||
tbbMasterRunManager.
|
||||
See G4WorkerRunManager for documentation of methods relative to
|
||||
base class. Only class specific methods are documented here.
|
||||
|
||||
\section TBB_B2b_s3 tbbUserWorkerInitialization
|
||||
|
||||
tbbUserWorkerInitialization class implements TBB specific worker initialization.
|
||||
It is a sub-class of G4UserWorkerThreadInitialization.
|
||||
Its role is to instantiate a tbbWorkerRunManager to be used by
|
||||
tbb tasks.
|
||||
|
||||
\section TBB_B2b_s4 tbbTask
|
||||
|
||||
tbbTask class represents one TBB task.
|
||||
|
||||
*/
|
||||
@@ -0,0 +1,47 @@
|
||||
|
||||
=========================================================
|
||||
Geant4 - an Object-Oriented Toolkit for Simulation in HEP
|
||||
=========================================================
|
||||
|
||||
TBB/B2b
|
||||
--------
|
||||
|
||||
This example shows how to integrate Intel Threading Building Block and Geant4
|
||||
to achieve event-level parallelism.
|
||||
|
||||
Note that this is a preliminary version which should not be considered a
|
||||
feature-complete example and which presents some limitations (no merging of
|
||||
output, no correct clean-up of heap). It will be substantially improved
|
||||
in 2014.
|
||||
|
||||
This example adds to B2b example, originally provided in basic example,
|
||||
the TBB based classes:
|
||||
|
||||
tbbMasterRunManager:
|
||||
--------------------
|
||||
This class implements the master model run manager for TBB bases
|
||||
application.
|
||||
It is instantiated by user main (or equivalent function) instead
|
||||
of G4[MT]RunManager. It controls the creation of tbb::tasks.
|
||||
See G4MTRunManager for documentation of methods relative to base
|
||||
class. Only class specific methods are documented here.
|
||||
|
||||
tbbWorkerRunManager
|
||||
--------------------
|
||||
This class implements the worker model run manager for TBB based
|
||||
application.
|
||||
It is instantiated by tbbUserWorkerInitialization and used by
|
||||
tbbMasterRunManager.
|
||||
See G4WorkerRunManager for documentation of methods relative to
|
||||
base class. Only class specific methods are documented here.
|
||||
|
||||
tbbUserWorkerInitialization
|
||||
---------------------------
|
||||
This class implements TBB specific worker initialization.
|
||||
It is a sub-class of G4UserWorkerThreadInitialization.
|
||||
Its role is to instantiate a tbbWorkerRunManager to be used by
|
||||
tbb tasks.
|
||||
|
||||
tbbTask
|
||||
---------------------------
|
||||
This class represents one TBB task.
|
||||
@@ -0,0 +1,22 @@
|
||||
|
||||
Geant4 extended examples - TBB
|
||||
--------------------------------
|
||||
|
||||
TBB directory shows how to integrate Intel Threading Building Block and Geant4
|
||||
to achieve event-level parallelism.
|
||||
|
||||
TBB/B2b
|
||||
|
||||
Currently only a preliminary version of one example is provided: it replaces
|
||||
the Geant4 Version 10.0 event-loop parallelism based on pthreads with TBB
|
||||
task-based parallelism. It should not be considered a feature-complete example
|
||||
and it present some limitations (no merging of output, no correct clean-up of
|
||||
heap).
|
||||
|
||||
It will be substantially improved in the future.
|
||||
If you have interest in TBB please
|
||||
refer to Geant4 Multi-threading user-forum (reachable from Geant4 website)
|
||||
where updates on TBB will be communicated or contact example author at:
|
||||
adotti@slac.stanford.edu.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user