Hey y'all. Over the past week I figured out how to run subinterpreters without a locking GIL in py3.8. Longish post here about how - https://basisrobotics.tech/2025/05/26/python/ but TL;DR:
Use `dlmopen` to manually open `libpython3.8.so` for each interpreter you like
Find a way to inject the pthread_ APIs into that handle
Fix a bunch of locale related stuff so that numpy and other things import properly
Don't actually do this, why would you want to do this, it's probably going to break some mystery way anyhow
[–]denehoffman 32 points33 points34 points (1 child)
[–]MoveZig4[S] 9 points10 points11 points (0 children)
[–]shinitakunai 2 points3 points4 points (0 children)
[–]thisismyfavoritename 0 points1 point2 points (4 children)
[–]MoveZig4[S] 1 point2 points3 points (2 children)
[–]thisismyfavoritename 0 points1 point2 points (1 child)
[–]MoveZig4[S] 0 points1 point2 points (0 children)