On Thu, Apr 16, 2015 at 12:57:29PM +0800, Fam Zheng wrote: > v3: Rebase to master for 2.4. > Although epoll_pwait1 syscall is still being worked on [1], the QEMU part > (if any) will base on this, so let's merge it first. > > That part is not included in this version because I'm still evaluating by > comparing epoll_pwait1 with epoll+timerfd as with current master they seem > to be really close. > > [1]: http://www.spinics.net/lists/linux-api/msg08216.html > > v2: Emulate nanoseconds precison of timeout with ppoll and timerfd. > Their performance is on par with each other, but both much better than > qemu.git: > > syscall high # of fd low # of fd > ------------------------------------------------- > qemu.git(ppoll) 44 96 > ppoll+epoll 85 101 > timerfd+epoll 87 109 > > (In high # of fd case, 3 activated but idle virtio-console devices are > attached, which will add us hundereds of fds to poll)
Have you rerun benchmarks with this patch series? I wonder how the ppoll-only performance changes. It seems like there are now additional copies of <fd, events, revents> information and corresponding malloc/realloc/frees. Stefan
pgpd6kEGVpiYh.pgp
Description: PGP signature