You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(If this issue was already discussed, I am really sorry.)
Since WSAPoll has been fixed in recent Windows 10 versions, could this library use an implementation based on it if the Windows 10 build is recent enough ? Since IOCP seems to suffer from latency, the performances should be better.
Actually, it just an idea. Some of my informations are not up to date. I don't know if Google Chrome uses WSAPoll today, and how they could use it. I don't know if the latency in IOCP has been fixed. I don't know if WSAPoll is more powerful than IOCP in the real world. Nobody opened an issue about this, and I wanted to know the maintainers's thoughts at this moment, since the popularity of Windows 10 is increasing. Someone could use this idea.
Some things to do for greater insight :
• Look up the Google Chrome source code, to see their method.
• Benchmark IOCP vs WSAPoll on Windows 10 version XXXX.
(English isn't my first language, so please excuse any mistakes.)
The text was updated successfully, but these errors were encountered:
The main issue with WSAPoll is that it takes linear time (O(n)) to run. For hundreds of thousands of sockets this amount of time is noticeable. The value proposition of wepoll is its ability to poll all of these sockets in near constant time (O(1)).
The main issue with WSAPoll is that it takes linear time (O(n)) to run. For hundreds of thousands of sockets this amount of time is noticeable. The value proposition of wepoll is its ability to poll all of these sockets in near constant time (O(1)).
Thank you for your explanations !
I don't know why I thought WSAPoll was more like epoll than poll. I surely misread or misunderstand an article on the web.
I checked Chromium and they use IOCP too for TCP and UDP sockets.
(If this issue was already discussed, I am really sorry.)
Since WSAPoll has been fixed in recent Windows 10 versions, could this library use an implementation based on it if the Windows 10 build is recent enough ? Since IOCP seems to suffer from latency, the performances should be better.
• At one time, Google Chrome utilized WSAPoll instead of IOCP. (python-trio/trio#52)
• At one time, IOCP suffered from latency. (python-trio/trio#52)
• WSAPoll fix : "As of Windows 10 version 2004, when a TCP socket fails to connect, (POLLHUP | POLLERR | POLLWRNORM) is indicated." (https://learn.microsoft.com/en-us/windows/win32/api/winsock2/nf-winsock2-wsapoll)
Actually, it just an idea. Some of my informations are not up to date. I don't know if Google Chrome uses WSAPoll today, and how they could use it. I don't know if the latency in IOCP has been fixed. I don't know if WSAPoll is more powerful than IOCP in the real world. Nobody opened an issue about this, and I wanted to know the maintainers's thoughts at this moment, since the popularity of Windows 10 is increasing. Someone could use this idea.
Some things to do for greater insight :
• Look up the Google Chrome source code, to see their method.
• Benchmark IOCP vs WSAPoll on Windows 10 version XXXX.
(English isn't my first language, so please excuse any mistakes.)
The text was updated successfully, but these errors were encountered: