3 ms·
System calls take 10x longer on Windows than they do on UNIX. That's what i/o completion ports are working around. They solve a problem UNIX doesn't have.
by jart 2y ago
System calls take 10x longer on Windows than they do on UNIX.
That's what i/o completion ports are working around.
They solve a problem UNIX doesn't have.
- dataflow 2y agoNo, IOCP is not a workaround for syscall overhead. In fact this performance hit has nothing to do with syscall overhead. The overhead is O(1). The penalty of the readiness design is O(n). Because if the system can't copy into your n-byte buffer in the background, then you gotta block for O(n) time to memcpy it yourself.
- dataflow 2y agoWhat is the downvote here supposed to mean? Do people think this is wrong, or just not like it?
- saagarjha 2y agoYou do realize io_uring exists for a reason, right?