epoll improvements

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I've a server using epoll and I've noticed that when
the traffic is low, the epoll_wait() latency goes up.

I've tried to reproduce it with a single client
and basically, if ep_poll() is able to find an event or the timeout is 0,
the latency is down to 5usec, otherwise if it enters the waitqueue
the latency goes up to 10-25usec, which impact the application performance.

Looking at the code there is something like a todo ("Is it worth to try to dig for events ?")
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/fs/eventpoll.c?id=refs/tags/v3.17#n1650

Anyone knows how the situation can be improved?
in theory having something like a 50usec spin loop 
checking for events before entering in the waitqueue should improve the situation.

suggestion? patches?
thanks!

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies




[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux