blob: 03399bcef73c012d54c7587bc88ca11526801d5e [file] [log] [blame]
Willy Tarreauab3e1d32007-06-03 14:10:36 +02001---------- epoll without limits --------
2% time seconds usecs/call calls errors syscall
3------ ----------- ----------- --------- --------- ----------------
4 47.19 2.671077 56 48093 22397 recv
5 47.15 2.668840 106 25060 4858 send
6 2.19 0.124020 10 12150 epoll_ctl
7 1.96 0.110904 286 388 epoll_wait
8 0.56 0.031565 47 670 close
9 0.19 0.010481 28 380 350 connect
10 0.15 0.008650 25 350 socket
11 0.14 0.008204 26 320 shutdown
12 0.14 0.007655 22 355 35 accept
13 0.12 0.006871 10 670 setsockopt
14 0.11 0.006194 9 670 fcntl64
15 0.07 0.004148 12 355 brk
16 0.04 0.002055 5 389 gettimeofday
17------ ----------- ----------- --------- --------- ----------------
18100.00 5.660664 89850 27640 total
19
20
21---------- sepoll without limit --------
22% time seconds usecs/call calls errors syscall
23------ ----------- ----------- --------- --------- ----------------
24 49.43 2.770682 97 28486 3861 send
25 46.48 2.605336 53 49317 23434 recv
26 2.00 0.111916 206 542 epoll_wait
27 0.65 0.036325 12 3030 epoll_ctl
28 0.45 0.025282 38 670 close
29 0.24 0.013247 34 388 358 connect
30 0.17 0.009544 27 350 socket
31 0.16 0.008734 27 320 shutdown
32 0.11 0.006432 18 357 37 accept
33 0.10 0.005699 9 670 setsockopt
34 0.08 0.004724 7 670 fcntl64
35 0.08 0.004568 6 767 gettimeofday
36 0.06 0.003127 9 356 brk
37------ ----------- ----------- --------- --------- ----------------
38100.00 5.605616 85923 27690 total
39
40
41---------- sepoll with send limit only --------
42% time seconds usecs/call calls errors syscall
43------ ----------- ----------- --------- --------- ----------------
44 49.21 2.779349 109 25417 418 send
45 46.94 2.651058 54 49150 23368 recv
46 1.77 0.099863 264 378 epoll_wait
47 0.57 0.032141 14 2351 epoll_ctl
48 0.46 0.025822 39 670 close
49 0.25 0.014300 37 387 357 connect
50 0.19 0.010530 30 350 socket
51 0.15 0.008656 27 320 shutdown
52 0.14 0.008008 23 354 34 accept
53 0.11 0.006051 9 670 setsockopt
54 0.10 0.005461 8 670 fcntl64
55 0.07 0.003842 6 604 gettimeofday
56 0.06 0.003120 9 358 brk
57------ ----------- ----------- --------- --------- ----------------
58100.00 5.648201 81679 24177 total
59
60
61---------- sepoll with send + recv limits --------
62Process 3173 attached - interrupt to quit
63Process 3173 detached
64% time seconds usecs/call calls errors syscall
65------ ----------- ----------- --------- --------- ----------------
66 49.09 2.802918 105 26771 596 send
67 47.72 2.724651 89 30761 728 recv
68 1.12 0.063952 55 1169 epoll_wait
69 0.47 0.026810 40 676 close
70 0.44 0.025358 11 2329 epoll_ctl
71 0.21 0.012255 30 403 367 connect
72 0.20 0.011135 35 320 shutdown
73 0.18 0.010313 29 356 socket
74 0.15 0.008614 6 1351 gettimeofday
75 0.13 0.007678 21 360 40 accept
76 0.13 0.007218 11 676 setsockopt
77 0.10 0.005559 8 676 fcntl64
78 0.05 0.002882 9 327 brk
79------ ----------- ----------- --------- --------- ----------------
80100.00 5.709343 66175 1731 total
81
82---------- epoll with send+recv limits -----------
83Process 3271 attached - interrupt to quit
84Process 3271 detached
85% time seconds usecs/call calls errors syscall
86------ ----------- ----------- --------- --------- ----------------
87 46.96 2.742476 124 22193 send
88 46.55 2.718027 98 27730 recv
89 2.58 0.150701 11 13331 epoll_ctl
90 2.30 0.134350 135 998 epoll_wait
91 0.52 0.030520 45 673 close
92 0.23 0.013422 42 320 shutdown
93 0.19 0.011282 29 386 353 connect
94 0.19 0.011063 31 353 socket
95 0.12 0.007039 20 359 39 accept
96 0.11 0.006629 10 673 fcntl64
97 0.10 0.005920 9 673 setsockopt
98 0.09 0.005157 5 999 gettimeofday
99 0.05 0.002885 9 335 brk
100------ ----------- ----------- --------- --------- ----------------
101100.00 5.839471 69023 392 total
102
103
104Conclusion
105----------
106epoll = 89850 syscalls
107sepoll = 85923 syscalls
108epoll+limits = 69023 syscalls
109sepoll+limits = 66175 syscalls
110
111=> limits reduce the number of syscalls by 23%
112=> sepoll reduces the number of syscalls by 4%
113=> sepoll reduces the number of epoll_ctl by 83%
114=> limits reduce the number of epoll_ctl by 24%
115=> limits increase the number of epoll_wait by 115%
116