-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: picoev fmt #20569
fix: picoev fmt #20569
Conversation
What is the performance impact? |
I will verify ASAP |
Any news? |
Why not just use the POSIX |
Sorry. I ended up getting bogged down with a lot of work during that time. Over the weekend I'll try to do some tests. |
TLDR: performance and scalability. Platform specific APIs like epoll and kqueue, can better handle the case of many thousands of connections, that are mostly idle. See https://stackoverflow.com/questions/5383959/why-exactly-does-epoll-scale-better-than-poll for more details, or https://en.wikipedia.org/wiki/C10k_problem . Imho in another 5-10 years, POSIX can standardize a common API for it, but afaik it has not happened yet, and |
No performance impact. After some performance test at Running 10s test @ http://127.0.0.1:8080
2 threads and 10 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 60.84us 21.37us 563.00us 77.52%
Req/Sec 80.73k 8.49k 128.49k 67.16%
1613112 requests in 10.10s, 193.84MB read
Requests/sec: 159724.51
Transfer/sec: 19.19MB The command used to run the projetcs was |
better use of OR bitwise
old generate c code
new generate c code