From owner-freebsd-isp Sun Feb 6 20:14:15 2000 Delivered-To: freebsd-isp@freebsd.org Received: from celery.dragondata.com (celery.dragondata.com [205.253.12.6]) by builder.freebsd.org (Postfix) with ESMTP id 8CB6C3ECF; Sun, 6 Feb 2000 20:14:10 -0800 (PST) Received: (from toasty@localhost) by celery.dragondata.com (8.9.3/8.9.3) id WAA88587; Sun, 6 Feb 2000 22:13:23 -0600 (CST) (envelope-from toasty) From: Kevin Day Message-Id: <200002070413.WAA88587@celery.dragondata.com> Subject: Re: FreeBSD and MS Windows performance To: Stanley.Hopcroft@IPAustralia.Gov.AU (Stanley Hopcroft) Date: Sun, 6 Feb 2000 22:13:23 -0600 (CST) Cc: Grog@Lemis.COM, FreeBSD-ISP@FreeBSD.ORG, FreeBSD-Questions@FreeBSD.ORG In-Reply-To: from "Stanley Hopcroft" at Feb 07, 2000 01:17:59 PM X-Mailer: ELM [version 2.5 PL1] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-isp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > Thanks for telling me about kde sucking up most of my memory and that > the FreeBSD wd driver - which does seem slow on this box. I thought it > was a slow Seagate disk wdc0: unit 0 (wd0): - ST31276A> - doesn't do DMA. According to Seagate's web page, this is a rather slow drive. :) > 2.1 the Linux VM system is "worse" than NTs The general consensus is that FreeBSD's VM system is ahead of linux's. But, this isn't an easily quantifiable assertation. However, many linux applications run slightly faster on the same system through FreeBSD's linux emulation than they do on Linux. The VM system apparently coming into play here. I can personally vouch that for things like compiling(gcc) and graphic work, FreeBSD is faster than Linux for >me< on the same hardware. It works, so I haven't looked into why. :) > 2.2 the Linux network API depends on select() and therefore it doesn't > handle thousands or 10s of thousands of TCP connections, whereas there > is an MS magic system call that handles tens of thousands of TCP > connections and works faster too. > > Russinovich calls this MS feature "completion ports". I'm not sure how Windows does this, but I agree select() is inefficient in heavy use cases. If you're planning something this big, you might see quite a speed improvement by having several processes running, splitting up the load a bit. Hitting a blocked syscall will have less of a disasterous effect if you do. > He also claims (in the May article that talks about network > performance. I don't know when the VM article was published other > sometime last year) that > > . because the Linux threads do not do asynchronous IO they are less > efficient than NTs threads. > > . because the Linux kernel does not provide re entrant read() and write > calls, that NT - which does - outperforms it. I can't comment on either of these. > . Linux lacks a "sendfile" system call to avoid reading something > before sending it over a TCP connection, and therefore lags Linux which > does. FreeBSD does have a sendfile syscall. It's performance compared to Windows' implementation is unknown to me. I know FreeBSD's is a zero-copy function, in many cases. > While he talks about TPC benchmarks that substantiate his claims that > MS NT outperforms Linux , he does *not* quote any. See the famous Mindcraft benchmarks, if you want to see one glaring example of Microsoft winning. > > Thank you, > > Yours sincerely. > > Stanley Hopcroft > Network Specialist > IP Australia Kevin Day To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-isp" in the body of the message