Using a jep SubInterpreter could possibly improve performance and potentially mitigate unexpected concurrency issues (like that of the invalid thread access issue that we have observed in the past).
- See here for further context relating to performance/optimization
- And here for release notes about how a
subInterpreter can have separate GILs to improve concurrency
However, in order to evaluate any changes/test, we will need to upgrade to Python 3.12 as well as Jep 4.2.
As of writing this issue, we are running Ubuntu 22.04.2 LTS and it ships with Python 3.10 and we are on Jep 4.1.1.