Bypass recompilation of subprocesses durimg subsequent runs

Asked by Saiyad Ashanujjaman

It seems that MadGraph recompiles all the subprocesses on each "launch" run (though the Fortran files are not recompiled, the linking executables are recompiled.). Is it possible to bypass the recompilation of the linking executables for the subprocesses during the subsequent "launch" runs? Just to be specific, I want to change the "param_card.dat" file on the subsequent runs and use the already compiled subprocesses during the first run.

Thanks and Regards,
Saiyad Ashanujjaman

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Solved by:
Olivier Mattelaer
Solved:
Last query:
Last reply:
Revision history for this message
Best Olivier Mattelaer (olivier-mattelaer) said :
#1

No,

This is not possible, if you do not recompile you will not use the correct benchmark.
The code does not "read" the param_card/run_card the associated information is actually converted to some include file which requires some small re-compilation of the code and therefore of the final linking.

The logic/advantages of this method are
1) we do not run one executable but often hundreds of them, which were all trying to read the same file creating an IO bottelneck.
Compiling the card avoid such IO issue since those files are not read anymore
2) It is now possible to edit the param_card/run_card to prepare the next run without having any issue that the modify run will be read by the code
3) The parsing of the param_card/run_card are done at the python level allowing to have much more flexibility on the content of the file and the format of the variable than a fortran parser can offer (ok technically fortran can do the same but this is very difficult to implement without any bug due to the rigidity of the language)

Cheers,

Olivier

Revision history for this message
Saiyad Ashanujjaman (ashanujjaman) said :
#2

Thanks for the clarification.

Revision history for this message
Saiyad Ashanujjaman (ashanujjaman) said :
#3

Thanks Olivier Mattelaer, that solved my question.