Geant4
• Monte Carlo framework for
particle interaction with matter
• Stands for “GEometry ANd
Tracking”
• Grew from an RD44 project at
CERN 20 years ago.
• Based on Geant3 – a FORTRAN
code from the 70’s
• Now a large international
collaboration.
The Meeting
• Huge number of talks (~125)
• Organised as parallel sessions
• Slightly biased view
• Tried to include some interesting things
Okinawa
• Island ~1000 miles
south of Tokyo
• Sub-‐tropical climate
• Excellent weather
• Many things to kill you
Headlines
• Multi-‐threading:
– Reproducibility is broken
– Some features need
moving
– Very good scaling with
threads
– Much less memory
required
• High Energy Physics: – ATLAS sticking with 9.6
and ST mode, CMS using
10.00 in ST mode
– Exploring MT
– Movement to C++11/14
– Improvements in
navigation.
– USolids library
Headlines
• Medical Physics:
– Better G4Analysis tools
– Validations, particularly
MCS and Bremsstrahlung
– Geant4 DNA
– New proton therapy
examples
• Space Physics: – Better biasing
– Reverse MC
– Physics uncertainties
• Generally 2D simulation
is preferred.
Rationale for MC in Medicine
• Several good reasons:
– Physics is usually better -‐ validation.
– Able to look at e.g. LET & RBE
– Out-‐of-‐field dose characterisation
• Speed is the major limitation
Medical Applications
• Similar demands to everyone
else – Speed and Accuracy
• Vastly different use case
• Only one talk on Proton
Therapy – Accuracy
• Several talks generally on
Medical Physics
• Many general talks on speed
Proton Therapy
• “Redacted” model of IBA
beamline
• Semi-‐Realistic
simulations possible
• Validates well…
• …provided you get the
physics right.
Proton CT
• Would be a very useful
tool
• Simulation now
reasonable
• Still takes ~90 days on a
single core!
X-‐Ray radiotherapy
• Significant Neutron flux
above 14MeV
• Not well characterised
• Probably a good reason
for that…
• MT should help.
Multi Threading
• Wrapper around PTHREADS
• Makes manipulating them much
easier
• 10 threads uses 20% of the
memory 10 processes use
• 10 threads are slower than 10
processes – locking and
overheads
• Scales well with number of
threads.
High Energy Physics
• 50% of LHC computing time is
simulation
• Even “small” improvements
make a big difference
• EM and hadronics treated
separately
• Significant efficiency savings!
• 6x speedup in hadronics,
10-‐15% in EM
HEP – An interesting Physics Case
• Re-‐Acceleration of charge at rest
• Proposed for frictional muon cooling
• Physics case shaky – frictionally cooled muons
don’t stop
• Would this be something we might be
interested in having?
Other interesting stuff
• Beam collimation with
bent crystals
• Now implemented in
Geant4 (next release
probably)
• Looks really cool
C++ 11/14 • Lots of new features
– “auto” keyword – really useful
– Range based for loops
– Native threading
– Thread-‐safe STL (for a given definition of “thread-‐safe”)
• Most compilers now support it – No excuse!
• Plan for Geant4-‐10.02 to be last C++03 release
GeantV • Hypothetical successor to Geant4
• Vectorised programming model
– Already got a lot of
implementations in USolids
– Difficult to vectorise the Geant
style tracking algorithm
– Some of the work can be
backported to improve Geant4
• Much faster!
• Many codes will benefit from this
kind of optimisation