aicirt native Windows support
mmoskal opened this issue · 1 comments
mmoskal commented
- shared memory/futex implementation
- figure out what to do with fork() in aicirt
Docs:
- https://shift.click/blog/futex-like-apis/
- https://devblogs.microsoft.com/oldnewthing/20170601-00/?p=96265
WIP for shm only: win.patch
mmoskal commented
It looks like fork() on Windows is going to be a major problem https://stackoverflow.com/questions/985281/what-is-the-closest-thing-windows-has-to-fork
A solution to that would be to create a separate process per request/sequence group and have threads inside of it for each sequence. When an AICI fork is required, we would create a new thread and memcpy() the Wasm module memory (I had this working once). It's quite non-trivial to implement though.