I ran the commands you said and learned that I'm not using epoll :( The
make file says it's automatic on Linux 2.6 and my kernel is 2.6.9-55. I
just rebuilt actually specifying target=linux26 and now epoll is enabled. I
think I just misunderstood what "automatic" meant. The Makefile clearly
says "you should build with TARGET=os" but after reading further and seeing
"enable epoll on Linux 2.6. Automatic" I didn't think I needed to. My bad.
I ran the -vv switch on the binary you have on the haproxy site but it looks like you compiled with some options that require kernel patches that I probably don't have (USE_TCPSPLICE and USE_TCPSPLICE) - are those key? What would that help with?
So now I've rebuilt haproxy and ran your test config and see the same output that you saw where as with the build I had been running I saw: Available polling systems :
poll : pref=200, test result OK select : pref=150, test result OK
Knowing how big an improvement epoll has over poll, I'm sure this will work wonders.
So I recompiled and did a soft-restart of haproxy using the new binary. Looks like the problem is solved! Thank you so much. ---Marc
top - 00:01:07 up 12:34, 1 user, load average: 0.11, 0.64, 0.90
Tasks: 81 total, 1 running, 80 sleeping, 0 stopped, 0 zombie Cpu0 : 0.7% us, 2.4% sy, 0.0% ni, 96.2% id, 0.0% wa, 0.7% hi, 0.0% si Cpu1 : 0.3% us, 1.7% sy, 0.0% ni, 97.3% id, 0.0% wa, 0.7% hi, 0.0% si Mem: 2074716k total, 470860k used, 1603856k free, 100432k buffers Swap: 8385912k total, 0k used, 8385912k free, 181148k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 785 root 15 0 32960 17m 372 S 4 0.9 0:06.29haproxyReceived on 2008/02/17 06:04
This archive was generated by hypermail 2.2.0 : 2008/02/17 06:15 CET