Date: Sun, 16 May 2004 00:27:48 -0500 From: Kevin Day <toasty@dragondata.com> To: freebsd-net@freebsd.org Subject: Sendfile performance regression from 4.x to 5.x Message-ID: <C4985C84-A6F9-11D8-9187-000A95A8A1F2@dragondata.com>
next in thread | raw e-mail | index | archive | help
We've got two nearly identically configured servers, serving the exact same load. Quick config: Dual P4 2.8Ghz with HTT enabled, 2GB RAM ahc SCSI adapter, with 4 drives in a vinum RAID5 config Dual bge gigabit network cards Server 1 is running 4.8 Server 2 is running 5.2.1 Other than OS version, everything is identical for all practical purposes. I'm running thttpd with USE_SENDFILE enabled. Both servers are receiving approximately equal numbers of requests to download some large files. (5MB to 200MB) Server 1 can easily push 300-500mbps. I'm pretty sure it could go higher, we just run into bandwidth limits at that point. With the caps removed, we've hit 800mbps for a short while. Server 2 seems to cap out around 80mbps, with thttpd spending most of it's time in "Giant" or "kqueue" according to top, the CPU around 90% idle. What's really strange is that right when thttpd starts up on 5.2, it will start sending 200mbps or higher for the first 10-15 minutes, and then start tapering off back down to 80mbps. It doesn't look like a thttpd bug, since it seems to work flawlessly on 4.x. I know a lot of work is being done on locking, sendfile and kqueue fun, so I'm not complaining. I just wanted someone to know this was happening, and hopefully have someone point out something obvious I'm missing that could be causing this... Anyone run into this before? -- Kevin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C4985C84-A6F9-11D8-9187-000A95A8A1F2>