Not sure if you haven't tried them yet, but here: - https://github.com/tetratelabs/wazero
- https://github.com/knqyf263/go-plugin - https://github.com/tetratelabs/wazero - https://github.com/ebitengine/purego I need some IPC too for a experiment, and was going to try them. On Sun, Apr 9, 2023, 15:25 Robert Engels <reng...@ix.netcom.com> wrote: > Linux context switch is 6-7 usec. Usually it is more cache invalidation > that causes the whole code to run slow. Usually spinning is the only > solution and core/cpu isolation. > > On Apr 9, 2023, at 1:33 PM, TH <tinsk...@gmail.com> wrote: > > Hey, > > I'm building a software which handles hundred-ish concurrent network > communications. I want to build some other parts of core logic in to a > separate process. I've tried to use UDS and pipes, but they all give me > ~25µs (RTT 50µs) latency and sometimes on idle 300µs (RTT 600µs). > > The 25µs is not a big problem, but the big variance in latency is an > uncovenience. Are there any methods to synchronize between two processes > with lower latency jitter? Throughput is not an issue, as I can always use > shared memory to pass big data. But I need a low latency way to signal > another process that new data is in the shared memory. > > I can get it to less than 5µs with spinlock on shared memory, but that's > not a solution as CPU is 100%. Are there any primitives that we could use > e.g. shared futex? Or the context switch is typically that heavy? > > Thanks > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/4e58d2c0-e097-49a3-afe2-af4ddac214f4n%40googlegroups.com > <https://groups.google.com/d/msgid/golang-nuts/4e58d2c0-e097-49a3-afe2-af4ddac214f4n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/F106DF3D-371A-4F95-BD5C-D38AFE47052A%40ix.netcom.com > <https://groups.google.com/d/msgid/golang-nuts/F106DF3D-371A-4F95-BD5C-D38AFE47052A%40ix.netcom.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAF9DLC%3DaOSvmhz5S9f3WQJRL6vdAeLoAsFta1ng1yNa4TtXd5w%40mail.gmail.com.