...
- Kepler actor
- Python actor
- Resources used by both: Python and Kepler actors
- libActor.so
- embeds user code
- provides Fortran/C wrapper that reads/write IDSes
- stored in $KEPLER/imas/lib64
- Actor.exe
- executable that is used to run actor in standalone mode
- debugging
- any kind of batch jobs (e.g. MPI)
- executable that is used to run actor in standalone mode
- Other: actor XML parameters etc, etc - not important concerning discussed scenario, etc. (in case of Python actors these files must be located close to Python module)
- libActor.so
Why Python actor uses $KEPLER ?
- Python script loads
libActor.so
to run user's (Fortran or CPP) code libActor.so
is stored in$KEPLER/imas/lib64
directorylib64
is Kepler's default place to look for libraries to be loaded- adding library path to
LD_LIBRARY_PATH
could be an alternative BUT in case of complex workflows (100+ actors) it can be extremely long - potential risk of exceeding system limits
- Python module loads code parameters based on
$KEPLER
variable
Separation of actors
Raw idea
...