HomeHEPForge

Fix FSR initialisation for thread safety

Description

Fix FSR initialisation for thread safety

Summary:
Ensure Sherpa is initialised only once and mutex calls to its Soft_Photon_Handler.

Rearrange initialisation of PHOTOS to mirror Sherpa.

These are modifications to the Sherpa interface to ensure that it is thread safe.
The Sherpa initialisation is not thread safe and forces us to create a global static object and mutexing wherever it is used. We have to make sure that we initialise the Sherpa instance only once and also initialise all interface class members for each thread.
The structural changes done for the Sherpa interface have been propagated to the PHOTOS interface for consistency.

This is related with !28 and T168.

Test Plan: Results with master branch are identical for Sherpa's Photons and for PHOTOS.

Reviewers: jback, tlatham, kreps

Reviewed By: jback

Differential Revision: https://phab.hepforge.org/D126

Details

Provenance
abudinenAuthored on Jul 2 2024, 6:13 PM
abudinenPushed on Jul 4 2024, 11:58 AM
Reviewer
jback
Differential Revision
D126: Fix FSR initialisation for thread safety
Parents
rEVTGEN189b66cf7378: Removed unnecessary EventHandler
Branches
Unknown
Tags
Unknown