Skip to content

Commit de78a64

Browse files
committed
Initial prompt to vibe subint support Bo
1 parent 5c98ab1 commit de78a64

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
This is your first big boi, "from GH issue" design, plan and
2+
implement task.
3+
4+
We need to try and add sub-interpreter (aka subint) support per the
5+
issue,
6+
7+
https://github.com/goodboy/tractor/issues/379
8+
9+
Part of this work should include,
10+
11+
- modularizing and thus better origing the `.spawn.*` subpkg by
12+
breaking up various backends currently in `spawn._spawn` in to
13+
separate submods where it makes sense.
14+
15+
- add a new `._subint` backend which tries to keep as much of the
16+
inter-process-isolation machinery in use as possible but with plans
17+
to optimize for localhost only benefits as offered by python's
18+
subints where possible.
19+
20+
* utilizing localhost-only tpts like UDS, shm-buffers for
21+
performant IPC between subactors but also leveraging the benefits from
22+
the traditional OS subprocs mem/storage-domain isolation, linux
23+
namespaces where possible and as available/permitted by whatever
24+
is happening under the hood with how cpython implements subints.
25+
26+
* default configuration should encourage state isolation as with
27+
with subprocs, but explicit public escape hatches to enable rigorously
28+
managed shm channels for high performance apps.
29+
30+
- all tests should be (able to be) paramatrized to use the new
31+
`subints` backend and enabled by flag in the harness using the
32+
existing `pytest --spawn-backend <spawn-backend>` support offered in
33+
the `open_root_actor()` and `.testing._pytest` harness override
34+
fixture.

0 commit comments

Comments
 (0)