From owner-freebsd-performance@FreeBSD.ORG Sun Dec 2 01:48:25 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7976916A417 for ; Sun, 2 Dec 2007 01:48:25 +0000 (UTC) (envelope-from mgowda82@gmail.com) Received: from wa-out-1112.google.com (wa-out-1112.google.com [209.85.146.180]) by mx1.freebsd.org (Postfix) with ESMTP id 51CF313C457 for ; Sun, 2 Dec 2007 01:48:25 +0000 (UTC) (envelope-from mgowda82@gmail.com) Received: by wa-out-1112.google.com with SMTP id k17so4199950waf for ; Sat, 01 Dec 2007 17:48:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; bh=F25fzKD3hzx6Lf/kMMSZbNqd+cATdzsDhzl0Sq8Mylo=; b=U3Ij3xcVFS3VelZMZY8BFuUmWY9s5SP/GYWg+/z+DCo7wXnFFw+BZQNnR3freUBa72tV+Om5/r0IyctnGSQwpbs4bzPhOdXYG7aNsPHfk9K353a5Kik9IfEliIzYgVuY4geEqE2UcGBNm19nWDjheQQpEySPcaghDOU2cDxZNsA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; b=AkWoSewo2AVNs8c+40r4cNsT1PrLNr0i9xFEuo6se5Wqfn9F/vrMColfFslKhnj2EdS3LZpcv730psm9Ugrzu5gBvxaclswvm7dSyzHN3mYBByT4PdczWFMu1dTw0bZsR9XU9yEfOP1TIT7fi3euRqJNDJCQAaI7hEnu8ucB5nY= Received: by 10.142.246.8 with SMTP id t8mr2948339wfh.1196560104654; Sat, 01 Dec 2007 17:48:24 -0800 (PST) Received: by 10.142.127.6 with HTTP; Sat, 1 Dec 2007 17:48:24 -0800 (PST) Message-ID: Date: Sat, 1 Dec 2007 17:48:24 -0800 From: "Manjunath R Gowda" To: "Boris Samorodov" In-Reply-To: <10228705@bb.ipt.ru> MIME-Version: 1.0 References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <10228705@bb.ipt.ru> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Gergely CZUCZY , freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Dec 2007 01:48:25 -0000 On 12/1/07, Boris Samorodov wrote: > > > 3ware driver is under GIANT at 7.x. I don't know if it's the same for > linux. It is not under GIANT any more, MPSAFE starting from 7.0 BETA1. -Manjunath From owner-freebsd-performance@FreeBSD.ORG Sun Dec 2 01:54:50 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D31F716A417 for ; Sun, 2 Dec 2007 01:54:50 +0000 (UTC) (envelope-from Peter_Losher@isc.org) Received: from mx.isc.org (mx.isc.org [IPv6:2001:4f8:0:2::1c]) by mx1.freebsd.org (Postfix) with ESMTP id B5AFE13C465 for ; Sun, 2 Dec 2007 01:54:50 +0000 (UTC) (envelope-from Peter_Losher@isc.org) Received: from farside.isc.org (farside.isc.org [IPv6:2001:4f8:3:bb::5]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "farside.isc.org", Issuer "ISC CA" (verified OK)) by mx.isc.org (Postfix) with ESMTP id 87997114049; Sun, 2 Dec 2007 01:54:48 +0000 (UTC) (envelope-from Peter_Losher@isc.org) Received: from manx.isc.org (manx.isc.org [IPv6:2001:4f8:3:bb::37]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by farside.isc.org (Postfix) with ESMTP id 138CDE6056; Sun, 2 Dec 2007 01:54:49 +0000 (UTC) (envelope-from Peter_Losher@isc.org) Message-ID: <47521068.7050004@isc.org> Date: Sat, 01 Dec 2007 17:54:48 -0800 From: Peter Losher Organization: ISC User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: Manjunath R Gowda References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <10228705@bb.ipt.ru> In-Reply-To: X-Enigmail-Version: 0.95.5 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig0362A8D3BB38069D9A620A30" Cc: Boris Samorodov , Gergely CZUCZY , freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Dec 2007 01:54:50 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig0362A8D3BB38069D9A620A30 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Manjunath R Gowda wrote: > On 12/1/07, Boris Samorodov wrote: >> >> 3ware driver is under GIANT at 7.x. I don't know if it's the same for >> linux. >=20 > It is not under GIANT any more, MPSAFE starting from 7.0 BETA1. I know in one case on a box running BETA2 the kernel dmesg reported that the twe driver was both GIANT and MPSAFE... (dunno if that has been fixed in BETA3 yet, I should check...) -Peter --=20 Peter_Losher@isc.org | ISC | OpenPGP 0xE8048D08 | "The bits must flow" --------------enig0362A8D3BB38069D9A620A30 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHUhBoPtVx9OgEjQgRAllGAKDfnTmIp1YyfnLJLpJRlTekYJc0LACgkCDE 5N4KfWsfxFHegtoUeaITsys= =Sllg -----END PGP SIGNATURE----- --------------enig0362A8D3BB38069D9A620A30-- From owner-freebsd-performance@FreeBSD.ORG Sun Dec 2 02:07:19 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7725416A419 for ; Sun, 2 Dec 2007 02:07:19 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1.sentex.ca [64.7.153.18]) by mx1.freebsd.org (Postfix) with ESMTP id 3EF4613C458 for ; Sun, 2 Dec 2007 02:07:19 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by smarthost1.sentex.ca (8.13.8/8.13.8) with ESMTP id lB227IiU047859; Sat, 1 Dec 2007 21:07:18 -0500 (EST) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.13.8/8.13.3) with ESMTP id lB227Hau006973 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 1 Dec 2007 21:07:17 -0500 (EST) (envelope-from mike@sentex.net) Message-Id: <200712020207.lB227Hau006973@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Sat, 01 Dec 2007 21:05:21 -0500 To: Peter Losher From: Mike Tancsa In-Reply-To: <47521068.7050004@isc.org> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <10228705@bb.ipt.ru> <47521068.7050004@isc.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Cc: freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Dec 2007 02:07:19 -0000 At 08:54 PM 12/1/2007, Peter Losher wrote: >Manjunath R Gowda wrote: > > On 12/1/07, Boris Samorodov wrote: > >> > >> 3ware driver is under GIANT at 7.x. I don't know if it's the same for > >> linux. > > > > It is not under GIANT any more, MPSAFE starting from 7.0 BETA1. > >I know in one case on a box running BETA2 the kernel dmesg reported that >the twe driver was both GIANT and MPSAFE... (dunno if that has been >fixed in BETA3 yet, I should check...) Hi, I think the card in question is twa in this case. On a RELENG_7 box from the other day, it shows up as 3ware device driver for 9000 series storage controllers, version: 3.70.05.001 twa0: <3ware 9000 series Storage Controller> port 0x3000-0x30ff mem 0x88000000-0x89ffffff,0x8a200000-0x8a200fff irq 16 at device 0.0 on pci2 twa0: [ITHREAD] twa0: INFO: (0x15: 0x1300): Controller details:: Model 9650SE-2LP, 2 ports, Firmware FE9X 3.06.00.005, BIOS BE9X 3.06.00.002 da0 at twa0 bus 0 target 0 lun 0 da0: Fixed Direct Access SCSI-5 device da0: 100.000MB/s transfers da0: 76283MB (156227584 512 byte sectors: 255H 63S/T 9724C) ---Mike From owner-freebsd-performance@FreeBSD.ORG Sun Dec 2 11:05:33 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 44AAD16A418 for ; Sun, 2 Dec 2007 11:05:33 +0000 (UTC) (envelope-from bsam@ipt.ru) Received: from mail.ipt.ru (mail.ipt.ru [194.62.233.102]) by mx1.freebsd.org (Postfix) with ESMTP id 010C413C448 for ; Sun, 2 Dec 2007 11:05:32 +0000 (UTC) (envelope-from bsam@ipt.ru) Received: from sp34.ipt.ru ([194.62.233.107] helo=bs1.sp34.ru) by mail.ipt.ru with esmtp (Exim 4.62 (FreeBSD)) (envelope-from ) id 1Iymde-00064x-Py; Sun, 02 Dec 2007 14:05:30 +0300 Received: from bsam by bs1.sp34.ru with local (Exim 4.63 (FreeBSD)) (envelope-from ) id 1Iymh0-0001g9-N8; Sun, 02 Dec 2007 14:08:58 +0300 To: "Manjunath R Gowda" References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <10228705@bb.ipt.ru> From: Boris Samorodov Date: Sun, 02 Dec 2007 14:08:58 +0300 In-Reply-To: (Manjunath R. Gowda's message of "Sat, 1 Dec 2007 17:48:24 -0800") Message-ID: <74532549@bs1.sp34.ru> User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Dec 2007 11:05:33 -0000 On Sat, 1 Dec 2007 17:48:24 -0800 Manjunath R Gowda wrote: > On 12/1/07, Boris Samorodov wrote: > > 3ware driver is under GIANT at 7.x. I don't know if it's the same for > > linux. > It is not under GIANT any more, MPSAFE starting from 7.0 BETA1. Wow, that's great news! Thanks. WBR -- Boris Samorodov (bsam) Research Engineer, http://www.ipt.ru Telephone & Internet SP FreeBSD committer, http://www.FreeBSD.org The Power To Serve From owner-freebsd-performance@FreeBSD.ORG Sun Dec 2 21:10:32 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E6F4E16A474 for ; Sun, 2 Dec 2007 21:10:32 +0000 (UTC) (envelope-from Peter_Losher@isc.org) Received: from mx.isc.org (mx.isc.org [IPv6:2001:4f8:0:2::1c]) by mx1.freebsd.org (Postfix) with ESMTP id C5BC013C4F5 for ; Sun, 2 Dec 2007 21:10:32 +0000 (UTC) (envelope-from Peter_Losher@isc.org) Received: from farside.isc.org (farside.isc.org [IPv6:2001:4f8:3:bb::5]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "farside.isc.org", Issuer "ISC CA" (verified OK)) by mx.isc.org (Postfix) with ESMTP id EFE55114060 for ; Sun, 2 Dec 2007 21:10:31 +0000 (UTC) (envelope-from Peter_Losher@isc.org) Received: from manx.isc.org (manx.isc.org [IPv6:2001:4f8:3:bb::37]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by farside.isc.org (Postfix) with ESMTP id 9D059E6074 for ; Sun, 2 Dec 2007 21:10:32 +0000 (UTC) (envelope-from Peter_Losher@isc.org) Message-ID: <47531F48.2040008@isc.org> Date: Sun, 02 Dec 2007 13:10:32 -0800 From: Peter Losher Organization: ISC User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: freebsd-performance@freebsd.org References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <10228705@bb.ipt.ru> <47521068.7050004@isc.org> <200712020207.lB227Hau006973@lava.sentex.ca> In-Reply-To: <200712020207.lB227Hau006973@lava.sentex.ca> X-Enigmail-Version: 0.95.5 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig865C4274F2A2DD06D4AD7E56" Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Dec 2007 21:10:33 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig865C4274F2A2DD06D4AD7E56 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Mike Tancsa wrote: > I think the card in question is twa in this case. Not in our case... -=3D- twe0: <3ware Storage Controller. Driver version 1.50.01.002> port 0x9c00-0x9c0f mem 0xfb6ffc00-0xfb6ffc0f,0xfa800000-0xfaffffff irq 29 at device 3.0 on pci1 twe0: [GIANT-LOCKED] twe0: [ITHREAD] twe0: 2 ports, Firmware FE8S 1.05.00.068, BIOS BE7X 1.08.00.048 twed0: on twe0 twed0: 305244MB (625140400 sectors) Trying to mount root from ufs:/dev/twed0s1a -=3D- Best Wishes - Peter --=20 Peter_Losher@isc.org | ISC | OpenPGP 0xE8048D08 | "The bits must flow" --------------enig865C4274F2A2DD06D4AD7E56 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHUx9IPtVx9OgEjQgRAj6qAKDM1MDVsJEbkYLotUUuajdCchyQ6QCg4I7X 9CuNl62q6E6sO2qPG5tFhKs= =bZcC -----END PGP SIGNATURE----- --------------enig865C4274F2A2DD06D4AD7E56-- From owner-freebsd-performance@FreeBSD.ORG Sun Dec 2 21:17:14 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0EFB216A418 for ; Sun, 2 Dec 2007 21:17:14 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost2.sentex.ca (smarthost2.sentex.ca [205.211.164.50]) by mx1.freebsd.org (Postfix) with ESMTP id C4DD513C465 for ; Sun, 2 Dec 2007 21:17:13 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by smarthost2.sentex.ca (8.14.1/8.13.8) with ESMTP id lB2LHCBY081143; Sun, 2 Dec 2007 16:17:12 -0500 (EST) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.13.8/8.13.3) with ESMTP id lB2LHC20011785 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 2 Dec 2007 16:17:12 -0500 (EST) (envelope-from mike@sentex.net) Message-Id: <200712022117.lB2LHC20011785@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Sun, 02 Dec 2007 16:15:16 -0500 To: Peter Losher , freebsd-performance@freebsd.org From: Mike Tancsa In-Reply-To: <47531F48.2040008@isc.org> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <10228705@bb.ipt.ru> <47521068.7050004@isc.org> <200712020207.lB227Hau006973@lava.sentex.ca> <47531F48.2040008@isc.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Cc: Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Dec 2007 21:17:14 -0000 At 04:10 PM 12/2/2007, Peter Losher wrote: >Mike Tancsa wrote: > > > I think the card in question is twa in this case. > >Not in our case... Sorry, I was referring to the original posters card http://lists.freebsd.org/pipermail/freebsd-performance/2007-November/002942.html >The box is a dual opteron 246 with 12GB of memory with 10K RPM >SATA disks on a 9550 3ware. From owner-freebsd-performance@FreeBSD.ORG Sun Dec 2 23:01:40 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2749416A417 for ; Sun, 2 Dec 2007 23:01:40 +0000 (UTC) (envelope-from julian@elischer.org) Received: from outM.internet-mail-service.net (outM.internet-mail-service.net [216.240.47.236]) by mx1.freebsd.org (Postfix) with ESMTP id 04F9113C448 for ; Sun, 2 Dec 2007 23:01:39 +0000 (UTC) (envelope-from julian@elischer.org) Received: from mx0.idiom.com (HELO idiom.com) (216.240.32.160) by out.internet-mail-service.net (qpsmtpd/0.40) with ESMTP; Sun, 02 Dec 2007 14:50:50 -0800 X-Client-Authorized: MaGic Cook1e X-Client-Authorized: MaGic Cook1e X-Client-Authorized: MaGic Cook1e Received: from julian-mac.elischer.org (home.elischer.org [216.240.48.38]) by idiom.com (Postfix) with ESMTP id DB115126B7D; Sun, 2 Dec 2007 14:50:49 -0800 (PST) Message-ID: <475336CA.70508@elischer.org> Date: Sun, 02 Dec 2007 14:50:50 -0800 From: Julian Elischer User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: josh.carroll@gmail.com References: <8cb6106e0710230902x4edf2c8eu2d912d5de1f5d4a2@mail.gmail.com> <8cb6106e0711032221i2ecf1d59ge82f368d4162a827@mail.gmail.com> <20071104122546.S544@10.0.0.1> <8cb6106e0711041243s37ef92e3i9c5c79827f547dbb@mail.gmail.com> <20071104151722.M544@10.0.0.1> <8cb6106e0711050141g674a7733h53f7e6a20e75ad07@mail.gmail.com> <20071106171059.M544@10.0.0.1> <8cb6106e0711062136r18ca8e67sbdb4d4372e10e086@mail.gmail.com> <20071109145827.W639@10.0.0.1> <8cb6106e0712011246j4dbe6b48s575120dda25760c7@mail.gmail.com> <8cb6106e0712011319q59efa8absb81eb7e18a0867c6@mail.gmail.com> In-Reply-To: <8cb6106e0712011319q59efa8absb81eb7e18a0867c6@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Jeff Roberson , freebsd-performance@freebsd.org Subject: Re: ULE vs. 4BSD in RELENG_7 X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Dec 2007 23:01:40 -0000 Josh Carroll wrote: >> I just ran through some of my benchmarks on a kernel build from >> sources as of today, and I've noticed an improvement for the ffmpeg >> workload. Here's a comparison of 4bsd, ule (BETA1) and ule (BETA3). >> This is vanilla source with no patches applied: > > Sorry, the ministat output was mangled. I'll try this again with 80 > columns instead. > > Also, please disregard the buildworld comparison, as world has changed > since the previous 4bsd and ule runs, so obviously that's not a valid > comparison. Sorry about that. > > Here are the ministat outputs for ffmpeg and sysbench, truncated to 80 > columns instead. Hopefully that'll come through properly. > is bigger better or worse? > Josh > > > ffmpeg: > > x 4bsd > + ule > * uleb3 > +------------------------------------------------------------------------------+ > |x xx xx * * * * * + + ++ +| > | |____A___| |_____AM____| |____MA_____| | > +------------------------------------------------------------------------------+ > N Min Max Median Avg Stddev > x 5 93.28 94.05 93.74 93.746 0.29686697 > + 5 97.56 98.7 98.03 98.042 0.41924933 > Difference at 95.0% confidence > 4.296 +/- 0.529778 > 4.5826% +/- 0.565121% > (Student's t, pooled s = 0.363249) > * 5 95.58 96.69 96.37 96.278 0.42446437 > Difference at 95.0% confidence > 2.532 +/- 0.534176 > 2.70092% +/- 0.569812% > (Student's t, pooled s = 0.366265) > > sysbench: > > x 4bsd > + ule > * uleb3 > +------------------------------------------------------------------------------+ > |x x x x + ++ * + * *| > | |___A_M_| |_____AM|___|A_____|| > +------------------------------------------------------------------------------+ > N Min Max Median Avg Stddev > x 5 2151.75 2172.05 2166.7 2163.14 8.1262968 > + 5 2274.13 2309.66 2298.99 2296.89 13.648515 > Difference at 95.0% confidence > 133.75 +/- 16.3813 > 6.18314% +/- 0.757294% > (Student's t, pooled s = 11.2321) > * 3 2303.61 2327.29 2313.17 2314.69 11.912951 > Difference at 95.0% confidence > 151.55 +/- 17.0782 > 7.00602% +/- 0.789509% > (Student's t, pooled s = 9.5567) > _______________________________________________ > freebsd-performance@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-performance > To unsubscribe, send any mail to "freebsd-performance-unsubscribe@freebsd.org" From owner-freebsd-performance@FreeBSD.ORG Mon Dec 3 00:20:44 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 58D2C16A417 for ; Mon, 3 Dec 2007 00:20:44 +0000 (UTC) (envelope-from josh.carroll@gmail.com) Received: from py-out-1112.google.com (py-out-1112.google.com [64.233.166.182]) by mx1.freebsd.org (Postfix) with ESMTP id B025C13C459 for ; Mon, 3 Dec 2007 00:20:43 +0000 (UTC) (envelope-from josh.carroll@gmail.com) Received: by py-out-1112.google.com with SMTP id u77so6582319pyb for ; Sun, 02 Dec 2007 16:20:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=dn+oVMHxAYuOBDPdFJtx4m1k0W19d3j2omw5u3ilUWI=; b=FnLAAaNU4kp2yjSmTjdficL/a3wpQxQep2hn6NHyDfMwFcGh2Y4ocs7fgN0x6rD/7ZapJY4VPff71Q5XSK/gt9CyU9LdbUZgcYGrT4M3Nto8nXylYKK6idEJLEZE3V7GZWfIVCI56x5hrx2Mei9fAMOaumERZjAs5apaM8L0F0k= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=xuR00bIhwq7dFai6DGrUg9GOov9HpywdtZD1Y9zyJ4UVrJq+33RCLsjhuCtXCeZoPd3NZZH/G6NlK9Ob8TNbisCGRrYl30pS7ohxPYytDJ/euRvjGdYA3iI27RNTNu95Q/rCPSET9gJRYondiHPx4MpdpBAkLeIHe3GRflRYvtM= Received: by 10.35.110.13 with SMTP id n13mr5829367pym.1196641242830; Sun, 02 Dec 2007 16:20:42 -0800 (PST) Received: by 10.35.129.13 with HTTP; Sun, 2 Dec 2007 16:20:42 -0800 (PST) Message-ID: <8cb6106e0712021620i46024096nd4f3a8e04ae03ed5@mail.gmail.com> Date: Sun, 2 Dec 2007 19:20:42 -0500 From: "Josh Carroll" To: "Julian Elischer" In-Reply-To: <475336CA.70508@elischer.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8cb6106e0710230902x4edf2c8eu2d912d5de1f5d4a2@mail.gmail.com> <8cb6106e0711041243s37ef92e3i9c5c79827f547dbb@mail.gmail.com> <20071104151722.M544@10.0.0.1> <8cb6106e0711050141g674a7733h53f7e6a20e75ad07@mail.gmail.com> <20071106171059.M544@10.0.0.1> <8cb6106e0711062136r18ca8e67sbdb4d4372e10e086@mail.gmail.com> <20071109145827.W639@10.0.0.1> <8cb6106e0712011246j4dbe6b48s575120dda25760c7@mail.gmail.com> <8cb6106e0712011319q59efa8absb81eb7e18a0867c6@mail.gmail.com> <475336CA.70508@elischer.org> Cc: Jeff Roberson , freebsd-performance@freebsd.org Subject: Re: ULE vs. 4BSD in RELENG_7 X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: josh.carroll@gmail.com List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Dec 2007 00:20:44 -0000 > is bigger better or worse? For sysbench bigger is better (more transactions per second). For ffmpeg, lower is better - e.g. the time to transcode the first 120 seconds of the selected video is less, so it ran faster. Josh From owner-freebsd-performance@FreeBSD.ORG Mon Dec 3 00:46:28 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AFEFB16A417 for ; Mon, 3 Dec 2007 00:46:28 +0000 (UTC) (envelope-from julian@elischer.org) Received: from outS.internet-mail-service.net (outS.internet-mail-service.net [216.240.47.242]) by mx1.freebsd.org (Postfix) with ESMTP id 9644713C45B for ; Mon, 3 Dec 2007 00:46:28 +0000 (UTC) (envelope-from julian@elischer.org) Received: from mx0.idiom.com (HELO idiom.com) (216.240.32.160) by out.internet-mail-service.net (qpsmtpd/0.40) with ESMTP; Sun, 02 Dec 2007 16:46:27 -0800 X-Client-Authorized: MaGic Cook1e X-Client-Authorized: MaGic Cook1e X-Client-Authorized: MaGic Cook1e Received: from julian-mac.elischer.org (home.elischer.org [216.240.48.38]) by idiom.com (Postfix) with ESMTP id E11E9126B88; Sun, 2 Dec 2007 16:46:26 -0800 (PST) Message-ID: <475351E3.2060809@elischer.org> Date: Sun, 02 Dec 2007 16:46:27 -0800 From: Julian Elischer User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: josh.carroll@gmail.com References: <8cb6106e0710230902x4edf2c8eu2d912d5de1f5d4a2@mail.gmail.com> <8cb6106e0711041243s37ef92e3i9c5c79827f547dbb@mail.gmail.com> <20071104151722.M544@10.0.0.1> <8cb6106e0711050141g674a7733h53f7e6a20e75ad07@mail.gmail.com> <20071106171059.M544@10.0.0.1> <8cb6106e0711062136r18ca8e67sbdb4d4372e10e086@mail.gmail.com> <20071109145827.W639@10.0.0.1> <8cb6106e0712011246j4dbe6b48s575120dda25760c7@mail.gmail.com> <8cb6106e0712011319q59efa8absb81eb7e18a0867c6@mail.gmail.com> <475336CA.70508@elischer.org> <8cb6106e0712021620i46024096nd4f3a8e04ae03ed5@mail.gmail.com> In-Reply-To: <8cb6106e0712021620i46024096nd4f3a8e04ae03ed5@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Jeff Roberson , freebsd-performance@freebsd.org Subject: Re: ULE vs. 4BSD in RELENG_7 X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Dec 2007 00:46:28 -0000 Josh Carroll wrote: >> is bigger better or worse? > > For sysbench bigger is better (more transactions per second). For > ffmpeg, lower is better - e.g. the time to transcode the first 120 > seconds of the selected video is less, so it ran faster. don't forget to give this info when giving numbers :-) > > Josh From owner-freebsd-performance@FreeBSD.ORG Tue Dec 4 09:22:14 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A1A7B16A417 for ; Tue, 4 Dec 2007 09:22:14 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from marvin.harmless.hu (marvin.harmless.hu [195.56.55.204]) by mx1.freebsd.org (Postfix) with ESMTP id 6324613C465 for ; Tue, 4 Dec 2007 09:22:14 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from localhost (marvin-mail [192.168.0.2]) by marvin.harmless.hu (Postfix) with ESMTP id EE48C7C0A97; Tue, 4 Dec 2007 10:22:11 +0100 (CET) X-Virus-Scanned: by amavisd-new-2.4.2 (20060627) (Debian) at harmless.hu Received: from marvin.harmless.hu ([192.168.0.2]) by localhost (marvin.harmless.hu [192.168.0.2]) (amavisd-new, port 10024) with ESMTP id X0bzyg8OHWsF; Tue, 4 Dec 2007 10:22:11 +0100 (CET) Received: from marvin.harmless.hu (localhost [127.0.0.1]) by marvin.harmless.hu (Postfix) with ESMTP id 9146C7C010D; Tue, 4 Dec 2007 10:22:09 +0100 (CET) Date: Tue, 4 Dec 2007 10:22:09 +0100 From: Gergely CZUCZY To: Mike Tancsa Message-ID: <20071204092209.GA55785@harmless.hu> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <200712012055.lB1Kt5IQ005728@lava.sentex.ca> <20071201205609.GA54238@harmless.hu> <200712012108.lB1L8qAd005766@lava.sentex.ca> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=x-unknown; protocol="application/pgp-signature"; boundary="G4iJoqBmSsgzjUCe" Content-Disposition: inline In-Reply-To: <200712012108.lB1L8qAd005766@lava.sentex.ca> User-Agent: mutt-ng/devel-r804 (FreeBSD) Cc: Jeff Roberson , freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 09:22:14 -0000 --G4iJoqBmSsgzjUCe Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Dec 01, 2007 at 04:06:55PM -0500, Mike Tancsa wrote: > At 03:56 PM 12/1/2007, Gergely CZUCZY wrote: > >I don't quite understand the question. It's the very same box, with > >a dualboot configuration. >=20 > Fire up the 3ware controller's RAID management software and make sure the= same write caching strategy is set for FreeBSD and Linux. The driver my=20 > default to different values. >=20 > i.e. under "controller settings" make sure "write cache" and "queuing" ar= e the same values for linux and freebsd. I fail to see such an option, not under the 3ware BIOS software, nor in the= tw_cli interface. Could you be more specific on this? Note: in the BIOS i've seen WC turned on for all units, and there were no OS-specific options. Sincerely, Gergely Czuczy mailto: gergely.czuczy@harmless.hu --=20 Weenies test. Geniuses solve problems that arise. --G4iJoqBmSsgzjUCe Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) owFNVL9rHEcUViSFwAQH1Af8uEaFb1d7kk4+TkiKJUXiILZMTsJYLszc7Nu7wbMz 5/mh0wlSJ4UL4zYJSRFIZTBGZf6FpHdtDA4pUiYpEvvNnqRLs/Bmvvne933zZp9e m5uZXfjtxfmDG0+effvB8/mPejfK4L3uJyW3J1InjSxrJM3mzVYzWUuaKyJbzRut laJotbJWsX/06daO0R61Tw7HQ2yDx1O/NFRc6nUQA24d+o3gi6TFLnG70g2Nk14a 3QapldR4tXdouXYF2uRzLUwudb8Nj4PxmCdDK7XnPYWMHWjocl+HXRSQNeqwnGU3 gXvIVtvZWrvZvHsbkqyZZXW4LR8hHHItHIeRJZ4224RbhFxpN9eAcI3lpcZSPF+H fbR9VGPYOT7aOb4/hW92IDd60ZMQ6RGCztE6z3UOfoC0iC46SaHjF121dIJ2DI6X CD1zWoeR9INIwyEPXPWM8SCMLmQ/WF6dZJsbyxkh9qQl+mHFsTLiVBDOW6MUWqL+ 8lZnF0queR9LigqcKXyFilJKTkZdoIpOb7BJ+5GNggUXAwoSnKd+2B+DdECXAoWx sGcRt7u7FcUXUofTFA6pe24lmYByPBGWY8GD8uAN5LKg24ntT7gi61fiZYrpJBuo TWXHRp6au9r/FNamurBWta5RioFgVNkNVnmYOJg0qaSqKK9CFyS65/KUdaDgUkVZ DiO3GNA+mGFMtQ6agp4Imga63TnoXgUXIZYG8CIyP3oolKTaoy24wJTRVAaVw9gE 6CGUhgjcEIUspAATj0m3xdidOCcXNJMGcvEEoyQN93bAB6sxj/jogitFoqR3dbiY ICIdxY827KCbTPkrF5Qv60otCKDGdcauZvQsiLMxK8m+N23oT5ZTUS1/Rq+uVOhc OgiMJUm8oHukRlKSnqY1pVHXMjgqnVEkdWgNvasyTi+9Im6lI/PfbM19OBOf9+W/ YWH2k+OZ7z6ev/7V+t9i4fcHv/xx/9//zuHF9z/N/HD07ue5X1/+OF98zd/+9erP 8M+b1/PvAQ== =YpoD -----END PGP SIGNATURE----- --G4iJoqBmSsgzjUCe-- From owner-freebsd-performance@FreeBSD.ORG Tue Dec 4 09:42:58 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 03F4A16A41B for ; Tue, 4 Dec 2007 09:42:58 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1.sentex.ca [64.7.153.18]) by mx1.freebsd.org (Postfix) with ESMTP id BAB0C13C46E for ; Tue, 4 Dec 2007 09:42:57 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by smarthost1.sentex.ca (8.13.8/8.13.8) with ESMTP id lB49gmOA058398; Tue, 4 Dec 2007 04:42:48 -0500 (EST) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.13.8/8.13.3) with ESMTP id lB49glKZ021633 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 4 Dec 2007 04:42:47 -0500 (EST) (envelope-from mike@sentex.net) Message-Id: <200712040942.lB49glKZ021633@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Tue, 04 Dec 2007 04:40:55 -0500 To: Gergely CZUCZY From: Mike Tancsa In-Reply-To: <20071204092209.GA55785@harmless.hu> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <200712012055.lB1Kt5IQ005728@lava.sentex.ca> <20071201205609.GA54238@harmless.hu> <200712012108.lB1L8qAd005766@lava.sentex.ca> <20071204092209.GA55785@harmless.hu> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Cc: Jeff Roberson , freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 09:42:58 -0000 At 04:22 AM 12/4/2007, Gergely CZUCZY wrote: >On Sat, Dec 01, 2007 at 04:06:55PM -0500, Mike Tancsa wrote: > > At 03:56 PM 12/1/2007, Gergely CZUCZY wrote: > > >I don't quite understand the question. It's the very same box, with > > >a dualboot configuration. > > > > Fire up the 3ware controller's RAID management software and make > sure the same write caching strategy is set for FreeBSD and Linux. > The driver my > > default to different values. > > > > i.e. under "controller settings" make sure "write cache" and > "queuing" are the same values for linux and freebsd. >I fail to see such an option, not under the 3ware BIOS software, nor >in the tw_cli interface. > >Could you be more specific on this? > >Note: in the BIOS i've seen WC turned on for all units, and there were no >OS-specific options. Hi, Its not in the bios, but in the management daemon. On FreeBSD, go to /usr/ports/sysutils/3dm and install the daemon. Start up 3dm2, point your browser to https://127.0.0.1:888 and login. Go to management menu and look at "controller settings" and there will be the values of write cache and queuing and storsav. Make sure the values set there, are the same on Linux and FreeBSD. You can download the LINUX version from 3ware's website. ---Mike From owner-freebsd-performance@FreeBSD.ORG Tue Dec 4 11:08:54 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B696816A41A for ; Tue, 4 Dec 2007 11:08:54 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from marvin.harmless.hu (marvin.harmless.hu [195.56.55.204]) by mx1.freebsd.org (Postfix) with ESMTP id 4357A13C459 for ; Tue, 4 Dec 2007 11:08:54 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from localhost (marvin-mail [192.168.0.2]) by marvin.harmless.hu (Postfix) with ESMTP id D55F77C17BE; Tue, 4 Dec 2007 12:08:50 +0100 (CET) X-Virus-Scanned: by amavisd-new-2.4.2 (20060627) (Debian) at harmless.hu Received: from marvin.harmless.hu ([192.168.0.2]) by localhost (marvin.harmless.hu [192.168.0.2]) (amavisd-new, port 10024) with ESMTP id Mal57IKdo3ho; Tue, 4 Dec 2007 12:08:50 +0100 (CET) Received: from marvin.harmless.hu (localhost [127.0.0.1]) by marvin.harmless.hu (Postfix) with ESMTP id 83F067C176B; Tue, 4 Dec 2007 12:08:47 +0100 (CET) Date: Tue, 4 Dec 2007 12:08:47 +0100 From: Gergely CZUCZY To: Mike Tancsa Message-ID: <20071204110847.GA67306@harmless.hu> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <200712012055.lB1Kt5IQ005728@lava.sentex.ca> <20071201205609.GA54238@harmless.hu> <200712012108.lB1L8qAd005766@lava.sentex.ca> <20071204092209.GA55785@harmless.hu> <200712040942.lB49glKZ021633@lava.sentex.ca> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=x-unknown; protocol="application/pgp-signature"; boundary="jRHKVT23PllUwdXP" Content-Disposition: inline In-Reply-To: <200712040942.lB49glKZ021633@lava.sentex.ca> User-Agent: mutt-ng/devel-r804 (FreeBSD) Cc: Jeff Roberson , freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 11:08:54 -0000 --jRHKVT23PllUwdXP Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Dec 04, 2007 at 04:40:55AM -0500, Mike Tancsa wrote: > At 04:22 AM 12/4/2007, Gergely CZUCZY wrote: > >On Sat, Dec 01, 2007 at 04:06:55PM -0500, Mike Tancsa wrote: > >> At 03:56 PM 12/1/2007, Gergely CZUCZY wrote: > >> >I don't quite understand the question. It's the very same box, with > >> >a dualboot configuration. > >> > >> Fire up the 3ware controller's RAID management software and make sure = the same write caching strategy is set for FreeBSD and Linux. The driver my > >> default to different values. > >> > >> i.e. under "controller settings" make sure "write cache" and "queuing"= are the same values for linux and freebsd. > >I fail to see such an option, not under the 3ware BIOS software, nor in = the tw_cli interface. > > > >Could you be more specific on this? > > > >Note: in the BIOS i've seen WC turned on for all units, and there were no > >OS-specific options. >=20 >=20 > Hi, > Its not in the bios, but in the management daemon. On FreeBSD, g= o to /usr/ports/sysutils/3dm and install the daemon. Start up 3dm2, point= =20 > your browser to https://127.0.0.1:888 and login. Go to management menu = and look at "controller settings" and there will be the values of write cac= he=20 > and queuing and storsav. Make sure the values set there, are the same on= Linux and FreeBSD. You can download the LINUX version from 3ware's websit= e. Thank you very much, I've made it worked. In both FreeBSD and Linux the wri= te cache seems to be turned on in the web-based management. However, I stil= l don't think this is OS-specific, since I see no OS-specific options, and = 3ware makes the devices available through SCSI, and WC is handled different= ly there. Sincerely, Gergely Czuczy mailto: gergely.czuczy@harmless.hu --=20 Weenies test. Geniuses solve problems that arise. --jRHKVT23PllUwdXP Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) owGFVc9vG0UUDi0IaRGInnp98iWH7tpr54eDkRMSh6aWkjbCDqXtAc3uztqj7M6Y mVk7LhckLhw4IFQQEkgIiSsSKHBDSPwD/Asc+Ac4w4X3Zje2Kyrwj9Xu7Jv3ffPN 99588vL1tWs3fvv+x0e3Pv70y+e+e/HX6FZeWCtHQc70VMigGYbNYLu9EW4H20E7 bLdfi9o7WykPm5vJ5tHZ1l5PSculDYbzCe+A5Re2McmYkK9DPGbacNstbBrseFdx h8JMlBFWKNkBITMh+eLdUDNpUq6DN2WsEiFHHXivUJYnwUQLaVmUcc+7J2FYcB8O eQzhpg+tMGwDs3jf2Qw7W1v7JxCEW2How4k45zBkMjYMZhrzdLxd2HeRrRZgXLPV 2GzQfB+OuB7xbA69h2e9hw+W4bsIN2C2gms+BRduI9zpf8Ptlogbna1tOHWIzf9D xF8fEiXXLa5eWA6FTLg2lskE7JjjIDckXx36dt24oSnXczAs5xCpCx9mwo6rTAyS gmWRUhZiJVMxKjRzk937Mui20AgycZk2ZgwfMNRqlWVcI8Bb+/1DyJlkI57jLoFR qXVRRChnuGhT4FPXo/mOxEwT7ZjFY9xDMBYh+WgOwgD6AVKl4bbm/GBw6FIcC1lc 1GGIsxMtcCmQz0tiCU9ZkVmwChKRojEIfsoyFGCVv6jzeikS1JbMCcsivqmtkKwt qfGaQ6+hnAWG1boe0KIWiyhxHNuMGLroFHlHJnHofUiZyIic4ZQ+HmMIqAnJ64NE xUtOS1kP+vcGC/koRGMFVMLZ2btxJvDZcp2ymDsI+vdUkSUwVwVEHHKFacyExyIV MSiJyYXZuwq9SxailJTQgYn1KSd6Eu73wBZa8oRm0aJYliFBYY0PlbMw9YwuUjnj D4IlkFsUid5thdUF7ggfr1efvjVuzRV6JBQmjorFwIqBEsZzsi9gbVVG8GHU9RRp 2SiMbkyUtqZh5qawIjONjSR3HIXEKkDalG+RZGCZtmRfjGr5MFEoYdcrKaJqGiKt Zob2QcHY2onpNBrNVrse4rfZ2dnZAZc7UyNB6Y4cixW2eClwj8oYdU61/2yXrago kGRUeqmykUqXVdH1xrzkR1Mq/7l7Y5U2bIo0ThaWXUlC1eMQ/KetqiSa93hh0kpT zPIAXROjKRM1k5liZf847t89e4dahhFkBa3y0p5Y6jM0t0D10H3DMZPnznauueRo bx/6ZKecJRyEhZnS5zzBLiSx69jxv2vaoeGq0eBVyZEVc0MCkzoLO1YWQfQgYoYn K/LX4Y6acaSA4CiPyLpeVjVHtD4ypAKgzrJiVx+MkDGnCZzcDM+wcmn6rlcWJjWI spMmfCpivGdTrG06cHBUq2I0hkFv0C9nYSkhIOqTZMh10ZmQ2bzcnrqHnwFx0Njh fc9b9PrHRfx47uWY26oOjMrheuyG38DzMs+4MfVx4XlBQBa5j6UriBq2/DoeGVIU hoygMtyIiVZIkPQcoymZFgaRP9q7/sIaHcxXp/qNa0/+WPvqlbc//P3RTz+///cP 05tPXlr/s/7L5eXa12bt284Xr96sPf/ZQf2v09EH33x+af8B =nmat -----END PGP SIGNATURE----- --jRHKVT23PllUwdXP-- From owner-freebsd-performance@FreeBSD.ORG Tue Dec 4 13:08:15 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1D34316A417 for ; Tue, 4 Dec 2007 13:08:15 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from marvin.harmless.hu (marvin.harmless.hu [195.56.55.204]) by mx1.freebsd.org (Postfix) with ESMTP id 8AF1513C442 for ; Tue, 4 Dec 2007 13:08:14 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from localhost (marvin-mail [192.168.0.2]) by marvin.harmless.hu (Postfix) with ESMTP id C2D4C7C17A2; Tue, 4 Dec 2007 14:08:12 +0100 (CET) X-Virus-Scanned: by amavisd-new-2.4.2 (20060627) (Debian) at harmless.hu Received: from marvin.harmless.hu ([192.168.0.2]) by localhost (marvin.harmless.hu [192.168.0.2]) (amavisd-new, port 10024) with ESMTP id eVCZmkfWByxC; Tue, 4 Dec 2007 14:08:12 +0100 (CET) Received: from marvin.harmless.hu (localhost [127.0.0.1]) by marvin.harmless.hu (Postfix) with ESMTP id B2ED97C1772; Tue, 4 Dec 2007 14:08:11 +0100 (CET) Date: Tue, 4 Dec 2007 14:08:10 +0100 From: Gergely CZUCZY To: Jeff Roberson Message-ID: <20071204130810.GA77186@harmless.hu> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <200712012055.lB1Kt5IQ005728@lava.sentex.ca> <20071201205609.GA54238@harmless.hu> <200712012108.lB1L8qAd005766@lava.sentex.ca> <20071201211012.GA55519@harmless.hu> <20071201122122.S884@192.168.1.107> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=x-unknown; protocol="application/pgp-signature"; boundary="nFreZHaLTZJo0R7j" Content-Disposition: inline In-Reply-To: <20071201122122.S884@192.168.1.107> User-Agent: mutt-ng/devel-r804 (FreeBSD) Cc: freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 13:08:15 -0000 --nFreZHaLTZJo0R7j Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Dec 01, 2007 at 12:22:34PM -1000, Jeff Roberson wrote: > On Sat, 1 Dec 2007, Gergely CZUCZY wrote: >=20 > >On Sat, Dec 01, 2007 at 04:06:55PM -0500, Mike Tancsa wrote: > >>At 03:56 PM 12/1/2007, Gergely CZUCZY wrote: > >>>I don't quite understand the question. It's the very same box, with > >>>a dualboot configuration. > >> > >>Fire up the 3ware controller's RAID management software and make sure t= he same write caching strategy is set for FreeBSD and Linux. The > >>driver my default to different values. > >> > >>i.e. under "controller settings" make sure "write cache" and "queuing" = are the same values for linux and freebsd. > >Let's get back to this on monday. I'm at home now, and the > >box is at me workplace, still running a test (i can't reboot it). >=20 > Also, can you verify with a read-only test to see where it's at? I have = not tested writes with that many threads. I notice mysql goes much faster= =20 > with a fresh table too. So can you blow away and recreate the sysbench t= ables and then do read-only? If that is much slower we'll know there is so= me=20 > configuration problem or similar. It will all be available here: http://phoemix.harmless.hu/mysql/ Some notes. With the ZFS tests, mysql seems to be a lot in zfs(&: state in top, and vmstate shows lots of the CPU spent in system: r b w avm fre flt re pi po fr sr da0 da1 in sy cs us= sy id (32 threads) 5 0 0 2904868 8563836 7259 0 0 0 7783 0 0 0 1009 33097 24196= 17 24 59 32 0 0 2921252 8565732 7445 0 0 0 7810 0 0 3 1579 48135 25277= 19 80 1 6 0 0 3167012 8563304 7731 0 0 0 7789 0 0 0 1581 49608 24088= 20 79 1 7 0 0 2861860 8564460 7226 0 0 0 7427 0 0 0 1547 47430 25276= 17 82 1 7 0 0 2968356 8563624 7591 0 0 0 7752 0 2 0 1588 48899 23958= 20 80 1 32 0 0 2984740 8562660 7495 0 0 0 7914 0 0 8 1583 48698 25508= 17 82 1 26 0 0 3040036 8563708 6852 0 0 0 7035 0 0 0 1446 44358 25176= 18 82 1 (64 threads) 5 0 0 3646244 8549136 6322 0 0 0 6552 0 0 0 1368 41438 30397= 17 83 0 47 0 0 3908388 8547924 6425 0 0 0 6525 0 0 0 1395 41779 33059= 18 81 1 65 0 0 3748644 8548356 6507 0 0 0 6689 0 0 0 1426 42855 29754= 18 82 0 57 0 0 3785508 8549040 6452 0 0 0 6583 0 0 0 1390 42103 30140= 18 81 1 8 0 0 4180772 8547492 6480 0 0 0 6604 0 0 0 1426 42261 30397= 15 84 1 So on. "zpool iostat" shows no activty on the zm pool i have, only occasionally 1-= 3K in 5sec intervals, that's nothing. So I think everything is returned from the fscac= he/zfs cache. I've increased vm.kmem_size a bit to fit for zfs: vm.kmem_size: 1073741824 The test hasn't yet finished, but it still seems to have a very poor perfor= mance: 1 2 4 8 16 32 64 threads 436.83 1038.33 879.85 826.63 757.92 969.31 845.84 qps (this is the read-only, keep in mind) With UFS: 1926.87 2172.59 2093.41 2478.06 2577.58 2543.55 2341.46 2166.81 2026.50 189= 1.09 1753.52 1647.64 and the linux-2.6.19.2+mysql-5.0.41+tcmalloc: 3431.56 4135.05 4984.12 5487.01 5448.19 5354.64 5226.64 5113.96 5011.94 470= 5.62 4362.06 3996.42 vmstat when running the test on UFS: procs memory page disks faults cpu r b w avm fre flt re pi po fr sr da0 da1 in sy cs us= sy id (8 threads) 7 0 0 2385660 9399000 19128 0 0 0 19601 0 0 0 3235 123806 4349= 0 37 61 2 8 0 0 2461436 9399180 18975 0 0 0 19468 0 0 0 3213 122856 5138= 9 39 60 1 6 0 0 2410236 9399508 19141 0 0 0 19706 0 0 0 3230 123783 5035= 3 38 61 2 5 0 0 2348796 9399744 19273 0 0 0 19817 0 0 0 3272 124558 5128= 1 38 60 2 (16 threads) 14 0 2 2664228 9393172 19988 0 0 0 20462 0 0 0 3148 123556 1747= 5 35 65 0 9 0 0 2666276 9393004 20146 0 0 0 20661 0 0 0 3231 125252 1734= 0 37 63 0 16 0 0 2596644 9394436 20157 0 0 0 20704 0 0 0 3204 124366 1742= 1 38 62 0 9 0 0 2590500 9394556 19712 0 0 0 20197 0 0 0 3113 122209 1761= 0 36 64 0 (32 threads) 30 0 0 2930468 9386688 19357 0 0 0 19919 0 0 0 3096 120375 1828= 5 39 61 0 26 0 0 2760484 9386848 19372 0 0 0 19913 0 0 0 3112 121284 1802= 0 39 60 0 10 0 0 2908964 9385772 19238 0 0 0 19672 0 1 0 3019 119013 1803= 7 35 64 0 17 0 0 2981668 9384308 19265 0 0 0 19715 0 0 0 3088 120462 1804= 0 39 61 0 (64 threads) 43 1 0 3662632 9372396 18201 0 0 0 18612 0 0 0 2864 113344 2006= 3 38 62 0 18 0 0 4131624 9372004 17703 0 0 0 18172 0 0 0 2808 110922 2134= 8 36 64 0 58 0 0 3562280 9374428 18016 0 0 0 18593 0 0 0 2840 111615 2107= 8 36 64 0 58 0 0 3990312 9375276 17834 0 0 0 18361 0 0 0 2886 112559 2066= 2 38 61 0 There was around 20% of CPU time spent in system state when mysql was runni= ng off a ZFS filesystem, then a UFS one. And also, there were more context switche= s, but less system caalls and interrupts. So, the result is basically the same as in the RW case. Where should I start investigating this issue? May I try again with the 4BSD scheduler? Currentl as you can see, I'm using the new ULE one. Sincerely, Gergely Czuczy mailto: gergely.czuczy@harmless.hu --=20 Weenies test. Geniuses solve problems that arise. --nFreZHaLTZJo0R7j Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) 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 fPib9Wc/9x8= =VNjA -----END PGP SIGNATURE----- --nFreZHaLTZJo0R7j-- From owner-freebsd-performance@FreeBSD.ORG Tue Dec 4 14:24:30 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6E72916A4FD for ; Tue, 4 Dec 2007 14:24:30 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost2.sentex.ca (smarthost2.sentex.ca [205.211.164.50]) by mx1.freebsd.org (Postfix) with ESMTP id 3019113C459 for ; Tue, 4 Dec 2007 14:24:30 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by smarthost2.sentex.ca (8.14.1/8.13.8) with ESMTP id lB4EOTMd018668; Tue, 4 Dec 2007 09:24:29 -0500 (EST) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.13.8/8.13.3) with ESMTP id lB4EOSUc022756 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 4 Dec 2007 09:24:29 -0500 (EST) (envelope-from mike@sentex.net) Message-Id: <200712041424.lB4EOSUc022756@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Tue, 04 Dec 2007 09:22:36 -0500 To: Gergely CZUCZY From: Mike Tancsa In-Reply-To: <20071204110847.GA67306@harmless.hu> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <200712012055.lB1Kt5IQ005728@lava.sentex.ca> <20071201205609.GA54238@harmless.hu> <200712012108.lB1L8qAd005766@lava.sentex.ca> <20071204092209.GA55785@harmless.hu> <200712040942.lB49glKZ021633@lava.sentex.ca> <20071204110847.GA67306@harmless.hu> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Cc: freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 14:24:30 -0000 At 06:08 AM 12/4/2007, Gergely CZUCZY wrote: >cache seems to be turned on in the web-based management. However, I >still don't think this is OS-specific, since I see no OS-specific >options, and 3ware makes the devices available through SCSI, and WC >is handled differently there. Its the queuing and StorSav setting that are important as well. Under StorSav, you have "performance", "protection" and "balance". Make sure those are the same as they drastically impact write performance of the card. ---Mike From owner-freebsd-performance@FreeBSD.ORG Tue Dec 4 14:30:31 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F199E16A419 for ; Tue, 4 Dec 2007 14:30:30 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from marvin.harmless.hu (marvin.harmless.hu [195.56.55.204]) by mx1.freebsd.org (Postfix) with ESMTP id AB97613C46E for ; Tue, 4 Dec 2007 14:30:30 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from localhost (marvin-mail [192.168.0.2]) by marvin.harmless.hu (Postfix) with ESMTP id 545EF7C0ADD; Tue, 4 Dec 2007 15:30:29 +0100 (CET) X-Virus-Scanned: by amavisd-new-2.4.2 (20060627) (Debian) at harmless.hu Received: from marvin.harmless.hu ([192.168.0.2]) by localhost (marvin.harmless.hu [192.168.0.2]) (amavisd-new, port 10024) with ESMTP id N13tifskInDa; Tue, 4 Dec 2007 15:30:29 +0100 (CET) Received: from marvin.harmless.hu (localhost [127.0.0.1]) by marvin.harmless.hu (Postfix) with ESMTP id 64B6F7C0AB2; Tue, 4 Dec 2007 15:30:27 +0100 (CET) Date: Tue, 4 Dec 2007 15:30:27 +0100 From: Gergely CZUCZY To: Mike Tancsa Message-ID: <20071204143027.GA89453@harmless.hu> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <200712012055.lB1Kt5IQ005728@lava.sentex.ca> <20071201205609.GA54238@harmless.hu> <200712012108.lB1L8qAd005766@lava.sentex.ca> <20071204092209.GA55785@harmless.hu> <200712040942.lB49glKZ021633@lava.sentex.ca> <20071204110847.GA67306@harmless.hu> <200712041424.lB4EOSUc022756@lava.sentex.ca> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=x-unknown; protocol="application/pgp-signature"; boundary="envbJBWh7q8WU6mo" Content-Disposition: inline In-Reply-To: <200712041424.lB4EOSUc022756@lava.sentex.ca> User-Agent: mutt-ng/devel-r804 (FreeBSD) Cc: freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 14:30:31 -0000 --envbJBWh7q8WU6mo Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Dec 04, 2007 at 09:22:36AM -0500, Mike Tancsa wrote: > At 06:08 AM 12/4/2007, Gergely CZUCZY wrote: > >cache seems to be turned on in the web-based management. However, I stil= l don't think this is OS-specific, since I see no OS-specific options, and= =20 > >3ware makes the devices available through SCSI, and WC is handled differ= ently there. >=20 > Its the queuing and StorSav setting that are important as well. Under St= orSav, you have "performance", "protection" and "balance". Make sure those= =20 > are the same as they drastically impact write performance of the card. Excuse me, but i have never heard of this "StorSav" thing, nor google gives= my anything but two hits, and suggests "StorSave" instead, which seems to = be some kind of "platform" from AMCC... Could you be a bit more detailed on this? Like step-by-step, how can I extr= act this information. Sincerely, Gergely Czuczy mailto: gergely.czuczy@harmless.hu --=20 Weenies test. Geniuses solve problems that arise. --envbJBWh7q8WU6mo Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) owFNVL+P3EQUPi4BoZFSRKKhQHpyQ4Ht8+39XrSXRHtRchJHFO2dIo5qPH5rj86e cWaed7PpQhqKCE6hhIKKBogogiio4A+gTcMfQM8/wBsvl4u08o7fvF/f977n82tX Vlav//XLy88/evb827d+vnqex01HZMqkkW6mTbKeZevJ7t7m1gYfkwEWxZ4sBptb O/nOdGPvzknxdGwNoaHkeNHiEAgf0VpbS20+BlVJ55FGHU2TXXHhd6B9a70mbc0Q tKm1wdd3x04aP0WX3DbKFtqUQ3jYWcIiaZ02JPMahbhn4LjDGA5QQbYZwyDLdkAS ZHvDwWC4sX3rCJJsK8tiONJnCMfSKC9h7jjPUOzDLfbcHma7wH7rg7XNtRAfwx10 JdYLGJ+ejE8/u3TfV1JVCB6x8UAWcgTqnMECrOH2gfhyjnmSS8+2RhpZYsNYUrhr 5zhDF8MheNL1SNRQWPMhcYg2Z+HpgX/3JolvUempVjF4bRSGAEQw9s07sG2gzMcg TTESo0EWmtuYS4dc9Qx930mBM634LGdS14EutjrblRVMxpPDPhYejEPZio81d1zo KRM+Etwyo+ccDlOxv0x/SMusDzvseBh99ISsm8gZd0gUbFQx9aEJ3bTWkTT85pmR uk4BTkyBjkNGog+KYWE7rjxDiFp0U+uYL4VRzK+BbxUQRn2ZKJd1f8dZjhge+M4F MNbjBXjZG/hGNhhq8nkBhZNMtpI1g+GOpCIepSaEN+qBnfaBSroiFbcfqc4zh6yo vCPQy/5MGB1UyC5Ld6Ys+h971E+wjHlCDkprS6a51DP0IwHNgttf9Pd9OppbqDQt x8YgyhI9XabCiDXkCWURw7zSqroU2kiw1LxlbGfa9E1EvFcUQEQwdbZhAY/HaZoK Xp+uLnpuOURCrgka64IaiGWwlGpAcAM+CRvB9dokXyThP4bKzpkJw6Lj1WUhBMqW 2jQ9YWEmXGMSlOl4Q2IhXu/K4049XoiGi5AdQrk0p6o33+Ttb2r0Pq06IZIkDO0B otFBqkxCyitnNFPvGWXNlLMEWLAB/FJS2rMSv7xx5e2V8Jm5+EhdX/3915XvX3z9 3Tuv/vhx+738/ov85fs//flVptn69J/T84PVJz988/fVf7/49P67r3774D8= =LFLp -----END PGP SIGNATURE----- --envbJBWh7q8WU6mo-- From owner-freebsd-performance@FreeBSD.ORG Tue Dec 4 14:49:25 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5D73216A417 for ; Tue, 4 Dec 2007 14:49:25 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1.sentex.ca [64.7.153.18]) by mx1.freebsd.org (Postfix) with ESMTP id 6124013C4E5 for ; Tue, 4 Dec 2007 14:49:24 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by smarthost1.sentex.ca (8.13.8/8.13.8) with ESMTP id lB4EnN2S082401; Tue, 4 Dec 2007 09:49:23 -0500 (EST) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.13.8/8.13.3) with ESMTP id lB4EnN9q022865 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 4 Dec 2007 09:49:23 -0500 (EST) (envelope-from mike@sentex.net) Message-Id: <200712041449.lB4EnN9q022865@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Tue, 04 Dec 2007 09:46:44 -0500 To: Gergely CZUCZY From: Mike Tancsa In-Reply-To: <20071204143027.GA89453@harmless.hu> References: <20071129101729.GA57985@harmless.hu> <20071130143023.I884@192.168.1.107> <20071201163334.GA21709@harmless.hu> <200712012055.lB1Kt5IQ005728@lava.sentex.ca> <20071201205609.GA54238@harmless.hu> <200712012108.lB1L8qAd005766@lava.sentex.ca> <20071204092209.GA55785@harmless.hu> <200712040942.lB49glKZ021633@lava.sentex.ca> <20071204110847.GA67306@harmless.hu> <200712041424.lB4EOSUc022756@lava.sentex.ca> <20071204143027.GA89453@harmless.hu> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=====================_1787026906==_" Cc: freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 14:49:25 -0000 --=====================_1787026906==_ Content-Type: text/plain; charset="us-ascii"; format=flowed At 09:30 AM 12/4/2007, Gergely CZUCZY wrote: >Excuse me, but i have never heard of this "StorSav" thing, nor >google gives my anything but two hits, and suggests "StorSave" >instead, which seems to be some kind of "platform" from AMCC... > >Could you be a bit more detailed on this? Like step-by-step, how can >I extract this information. Its on the 3dm menu under controller settings and unit policies. Attached is an image illustrating where it is. ---Mike --=====================_1787026906==_ Content-Type: application/octet-stream; name="3dm.jpg" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="3dm.jpg" /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAIBAwsDASIA AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3 ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3 uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD23WdX XSbVGWCS5upm8u3tovvSv6ew7kngCsVrXxzcxmb+09Js5Dytstu0ij2Zyc59wK3LzaLmO5SNWmhV kV5DhUDYyfr8o6e9V7GaS4vg7TTTAA8quyJfpnk1DxUYSUErtlqhKUXJvRGVonijUP7d/wCEe8RW UdtqbIXgltyTDcqOSVzyDgHg10d7qVjpsYkvryC2QnAaaQKD+dc54peEeKvCgUr9r+2Ptx97Z5bb vwrA8faTpGnXt14h1s3Oo+dbtBa2nlExwsB1JB4/H3rtVOM5R6XXQ53JxT8j0iCeK5hWaCVJYnGV dGyCPY1JXjHhbVtU8K6N4UtYZYHtNWuWaXcN3lqWHAOeDg8+9XB8UtRfR9cuUSAzpdpDpyGMjcrk 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 8Zo/4R/4g/8AQZ0j/vwv/wAZr0Oij2z/AJV9weyXd/eeef8ACP8AxB/6DOkf9+F/+M0f8I/8Qf8A oM6R/wB+F/8AjNeh0Ue2f8q+4PZLu/vPPP8AhH/iD/0GdI/78L/8Zo/4R/4g/wDQZ0j/AL8L/wDG a9Doo9s/5V9weyXd/eeef8I/8Qf+gzpH/fhf/jNH/CP/ABB/6DOkf9+F/wDjNeh0Ue2f8q+4PZLu /vPPP+Ef+IP/AEGdI/78L/8AGaP+Ef8AiD/0GdI/78L/APGa9Doo9s/5V9weyXd/eeef8I/8Qf8A oM6R/wB+F/8AjNH/AAj/AMQf+gzpH/fhf/jNeh0Ue2f8q+4PZLu/vPPP+Ef+IP8A0GdI/wC/C/8A xmj/AIR/4g/9BnSP+/C//Ga9Doo9s/5V9weyXd/eeef8I/8AEH/oM6R/34X/AOM0f8I/8Qf+gzpH /fhf/jNeh0Ue2f8AKvuD2S7v7zzz/hH/AIg/9BnSP+/C/wDxmj/hH/iD/wBBnSP+/C//ABmvQ6KP bP8AlX3B7Jd39555/wAI/wDEH/oM6R/34X/4zR/wj/xB/wCgzpH/AH4X/wCM16HRR7Z/yr7g9ku7 +888/wCEf+IP/QZ0j/vwv/xmuc/4VJr3/P3pv/fyT/4ivZqKqOJnH4Ul8iZUIy3bfzPGf+FSa9/z 96b/AN/JP/iKP+FSa9/z96b/AN/JP/iK9moqvrlUX1WmeM/8Kk17/n703/v5J/8AEUf8Kk17/n70 3/v5J/8AEV7NRR9cqh9VpnjP/CpNe/5+9N/7+Sf/ABFH/CpNe/5+9N/7+Sf/ABFezUUfXKofVaZ5 No/wv1vT9bsL2W609o7e4jlcJI5JCsCcfJ14r1miisalWVR3kaU6caatEKKKKzNAooooAKKKKACi iigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK KACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoooo AKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigA ooooAKKKKACiiigAooooAKKKKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QIt v/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf /QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr 7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1a KAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8A sK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/w N/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0C Lb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+16 3/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCw o+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3 /wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QIt v/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf /QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr 7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1a KAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8A sK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/w N/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0CLb/wN/8AsK1aKAMr7Xrf/QItv/A3/wCwo+163/0C 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 tYA7RkYzm1BoelW/2LZeOfsd7PfR5lXl5fM3A8fd/etjvwOT3T/hDdL/AOfrXP8Awe3v/wAeqvfe G9D02wuL67vtcjtreNpZX/ty+O1QMk4EuTx6U7sS7L+v6uWG0HSH0G70d7t2tro3HmHzlDfvmZnw QOxY4/XNU08J6aZnnutbvbydzb7pJpYhxBL5kYCoiqBng4AyPfmp08J6a87J5niARhFZZjr15tfO eB+/zkYGcgDkYJ5xL/whul/8/Wuf+D29/wDj1JaO4XuMuvD2mXEtxcRanPbXct4L1LiGWPfDIIhE doZSpBQYIYN1PthJ/D9k8scltrt/Zv5CW07w3KM9zGudod3VmBG5vmUq3zdeBiT/AIQ3S/8An61z /wAHt7/8eo/4Q3S/+frXP/B7e/8Ax6gLjPEes22nQQgRXV0ZFZALWFpiuCpyxHTp36/nXNf8JPF/ 0CdZ/wDAB/8ACuo/4Q3S/wDn61z/AMHt7/8AHqP+EN0v/n61z/we3v8A8epWAy/h/wCY6a5O9vPA s9+ZUWeIxsVKLzg+4P5V2Y61yltpsej+OtOt7W61JoLjTLx5Y7rUZ7hSyS2wUgSuwBAdxkY6musx S5dbgFFFFUAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAU UUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRR RQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFF AHP+O/8AknniX/sFXX/opqoz6PqF7461G4g1PUtMgNhaoJbaKErKweYkZljcZXI4GPvc9qveO/8A knniX/sFXX/opqffeJHttZl0u00TUtRnhgjnka2aBVRXLBf9bKhJ+RugNA+j/rqc5qfhu6fUtce2 hnuL6HQoodPvJVAcznzwzK+AFkOVyVxjd2BrFvtD0+6tLyTTfDM8eixPp0j2b6W6b5UnJmZYGQMz eUQGYKdw4ycGvU7O4+12cNx5UkJkQMYpcb4z3VsEjIPBwTyKhsdThv7rULeJZA9jOLeUsBgsUR8j nphx1xzmmtHp01/H/gg3f+vT/L8zhm0rVJPiA90haJ/P320q6ZISLb7OFCNcFwix+Zk+TtLbvmxz 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 BBRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUA FFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAU UUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRR RQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB4bYfFnxzqvmf2doFpeeXjzPs9 nPJsznGdrnGcH8qgT4z+LZLg26aVprTgkeWtvKWyOvG/PGDWZqOoXnh74feFG0W9ns2vGuZrl7eU oZXV1UbiOuBxivQNPltm8Q22oX9gH1O/8N+fdEMYycfeyo7sMDPbbXrVI04Jy5FbX8P+GZ5lOVSd lzO+n42/zRyjfGPxilil6+j6etpIxRJzbTCNmHYNvwTweKg/4Xj4m/58dJ/79Sf/AByt/QYdA1jw VodrfaVL9ivdXmjt7ZLhsQEhyMtwWwOPesvw/wCB9At9O1HUNW+yTomoy2UC6hqJtIwiEjduUElz jp060fuE2pQ2D987cs9/+D/kVP8AhePib/nx0n/v1J/8coHxw8TEgCw0kk9B5Mn/AMcqe38MeEbO 48WXTRpq+n6dHBPa+TeED5t2U3ocdQBk5OPesv4cfZpfFWsaja2axyWtlcXVhbFt/lt/CATy2AcZ P1quWhyuShsr/hcm9dSUebd2Ny++Knj3TIVmv/DltaRM20PPYzxqT6ZL9aof8Lx8Tf8APjpP/fqT /wCOVzcXjPxTcaVq1rJdXF/a3MY+0G4BmEK7uq5yEySB6cjHOK6jSfCfhw3Oj+G7+yuJdS1fTxep qSTkeQzBiEEfQgBDyckk/TDdKnBNzgvl6XEqs5NKMn8yP/hePib/AJ8dJ/79Sf8AxylX43eKGDFd P0ohRliIZeBnGT+89SPzo0zRPDGneD9M1DV9He/urjU3smaO6eMEbiMnBxwBwBjPrT9StNE8N2vj TSRpTXMcVxAIna5ZSm9SU6ddhJPPXODS5aDfLGH9XS7+Za9tvKdv6f8AkR/8Lx8Tf8+Ok/8AfqT/ AOOU+L41+Kp5khh03S5JZGCoiQSlmJ4AAEnJq3q/hLwzP45svCWn6W9o8u2ee9F07sE2FjGqNkAn A5OevSjQ9K8L69ePeaJpU+lXGjalbHL3LSC4RpQOQx+U8E4H69p/2fl5uT+tu/cX7+9ub+t7DZ/i 144toZpp9AtIooZPKleSznVY367WJfg8jg+tU/8AhePib/nx0n/v1J/8crqtU0sa3Y67pjOUW58T xxsy9QpSPJHvjNc/4v8ACnhGy0PUPsM+mWuo2TgRJFqxnluADhhJGwGxsc4XPNTTdCVk4au35L/M ucayb5Zf1dr9Cr/wvHxN/wA+Ok/9+pP/AI5V2w+LHjrVVdtO8P2l4seA5t7OeTbnpna5xXL/ABFt dE0nX30fSNIFmbUKZZ/tLyGbeisPlYnbjJ+tdN4Q1q3h8I6Zpl7f6j4enW7M1nfCJ/s158wyr4xu AzggkAcZPatZU6Xs1OMN/wCuhlGpU5+VzKh+OHicEg2GkgjqDDJ/8cp8Xxq8Vzb/ACtM0yTy1Lvt glO1R1J/ecD3rQTwxaS+I/Ed94rttHaYXMSoJL97K3O9SxZWG4liApwe5ap9Lg8OaDZ+Nrezgi1b To4Ypt0d6SJI2/5Zblzja27nrzzWbdDluoa2+XT/ADNbVub4tLmbF8YfGU5iEOjWEhlDNGEtZjvC 5LEYfnGDn0xVf/hePib/AJ8dJ/79Sf8Axyug1CXSr9/CNvHpcls0ulTSwyx3sgaGMQSHy+ME845z 2x0JrO0zw94QjtvCFve6HLcXWtwkPMt3IgRgB820Hk5PTgUL2PWH9a+fkKSq2TU/608vMof8Lx8T f8+Ok/8AfqT/AOOUf8Lx8Tf8+Ok/9+pP/jlVrbw/4f0Tw9rWsarYT6oINTfTraETmLaFP3yyjrj2 I46c1rWfhLwt/wAJ/wCINKmgtiYPJTT7C5vXgSQsAW+cZckdhz16el2w937n9af5on9/a7l1t+f+ TKX/AAvHxN/z46T/AN+pP/jlPPxr8VBUY6bpYWTOwmCXDduP3nNc38QdCg0DxL9ntdOuLC3kiV1i lkEgzkglGBJK8ZG7B55A6V3uladBp+v6Y8ECPc2HhMXVsmODMWclgO5yx/Ohxw6gpqJKlW9p7Ny1 /wA2ilffFTx7pkKzX/hy2tImbaHnsZ41J9Ml+tUP+F4+Jv8Anx0n/v1J/wDHK5uLxn4puNK1a1ku ri/tbmMfaDcAzCFd3Vc5CZJA9ORjnFdbpfg7wyF0TQb62uptV1qzN2t+kpVbc7dyqE6MMKc55/Ph unSgrzgvl6XGqlSb9yT+f9eZW/4Xj4m/58dJ/wC/Un/xynxfGrxXNv8AK0zTJPLUu+2CU7VHUn95 wPem6ZonhjTvB+mahq+jvf3Vxqb2TNHdPGCNxGTg44A4Axn1rWg0/SvD9r8RNKt7FnjgiQq7THOx 1yq/8BYk56noalqhqow/rT/MqPtrrmn/AFr/AJMyP+F4+Jv+fHSf+/Un/wAco/4Xj4m/58dJ/wC/ Mn/xyr2r+EvDM/jmy8Jafpb2jy7Z570XTuwTYWMao2QCcDk569Kyb3SvC+veHddvNE0qfSrjRpFO XuWkFwjMRyGPyngnA/Xs4rDuz5N/87X37i/f/wA39b2NSb4teOLeCWefQbOKKGTypZHs5lVH67SS /B5HB9ap/wDC8fE3/PjpP/fqT/45XT3+ljW9M1rTGcotz4ljjZl6hSkeSPfGawvF/hTwjZaHqH2G fTLXUbJwIki1Yzy3ABwwkjYDY2OcLnmopuhKycNXb8l/mVJVukv6u1+hV/4Xj4m/58dJ/wC/Un/x ytGL4peP5pY4ovDUEkksXnRotjOS8f8AfA38ryOenNcz8S9M0PQ9ai0vR9NNu6RiWaUzu+7cBhQC TgDGc9Tu9BXounu0eqaU6MVdfCBKspwQcpyKc1RVNTjDe/4Jv9BU3VlPkcu34tL9Tnb/AOK3jzS4 1k1Dw7bWiOdqtcWU8YY+gJcVBZ/GTxhqFyttZaPp9zOwJEUNtM7HHJ4D5rA0rX9X1fwz4msdS1C6 vLYWSTg3ExkKOs0e3BYkjOTx3q34KmlsPAni/UrORor6OOCNJoyQ6Kzndgjp/wDWq5UacYtuKurf joRGpUlKKUnr+n/ANdvi941Wa4hbQ7IS2yl50NpNuiUdSw3/ACjkdaq/8Lx8Tf8APjpP/fqT/wCO V0UEv2nx14Qe5xLNq2h+Vehl5kBjY5b1yR+leI06VKlPeC/ptfoFSrUhtJ/0k/1PTP8AhePib/nx 0n/v1J/8co/4Xj4m/wCfHSf+/Un/AMcrzOitvqtH+Uy+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+ Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDH K8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5 j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/ 79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8A nx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zo o+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/ AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf /HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n /v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0 f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj 4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP +F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J /wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+ sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/5 8dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+ Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDH K8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5 j0z/AIXj4m/58dJ/79Sf/HKP+F4+Jv8Anx0n/v1J/wDHK8zoo+q0f5Q+sVf5j0z/AIXj4m/58dJ/ 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 ooooA//Z --=====================_1787026906==_-- From owner-freebsd-performance@FreeBSD.ORG Tue Dec 4 14:59:36 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 78A9D16A418 for ; Tue, 4 Dec 2007 14:59:36 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from marvin.harmless.hu (marvin.harmless.hu [195.56.55.204]) by mx1.freebsd.org (Postfix) with ESMTP id 293D213C461 for ; Tue, 4 Dec 2007 14:59:35 +0000 (UTC) (envelope-from gergely.czuczy@harmless.hu) Received: from localhost (marvin-mail [192.168.0.2]) by marvin.harmless.hu (Postfix) with ESMTP id A4A8E7C009D; Tue, 4 Dec 2007 15:59:34 +0100 (CET) X-Virus-Scanned: by amavisd-new-2.4.2 (20060627) (Debian) at harmless.hu Received: from marvin.harmless.hu ([192.168.0.2]) by localhost (marvin.harmless.hu [192.168.0.2]) (amavisd-new, port 10024) with ESMTP id Q3pmXoR1eVM3; Tue, 4 Dec 2007 15:59:34 +0100 (CET) Received: from marvin.harmless.hu (localhost [127.0.0.1]) by marvin.harmless.hu (Postfix) with ESMTP id B73E27BFCFE; Tue, 4 Dec 2007 15:59:33 +0100 (CET) Date: Tue, 4 Dec 2007 15:59:33 +0100 From: Gergely CZUCZY To: Mike Tancsa Message-ID: <20071204145933.GA93306@harmless.hu> References: <20071201163334.GA21709@harmless.hu> <200712012055.lB1Kt5IQ005728@lava.sentex.ca> <20071201205609.GA54238@harmless.hu> <200712012108.lB1L8qAd005766@lava.sentex.ca> <20071204092209.GA55785@harmless.hu> <200712040942.lB49glKZ021633@lava.sentex.ca> <20071204110847.GA67306@harmless.hu> <200712041424.lB4EOSUc022756@lava.sentex.ca> <20071204143027.GA89453@harmless.hu> <200712041449.lB4EnN9q022865@lava.sentex.ca> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=x-unknown; protocol="application/pgp-signature"; boundary="gBBFr7Ir9EOA20Yy" Content-Disposition: inline In-Reply-To: <200712041449.lB4EnN9q022865@lava.sentex.ca> User-Agent: mutt-ng/devel-r804 (FreeBSD) Cc: freebsd-performance@freebsd.org Subject: Re: mysql scaling questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 14:59:36 -0000 --gBBFr7Ir9EOA20Yy Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Dec 04, 2007 at 09:46:44AM -0500, Mike Tancsa wrote: > At 09:30 AM 12/4/2007, Gergely CZUCZY wrote: > >Excuse me, but i have never heard of this "StorSav" thing, nor google gi= ves my anything but two hits, and suggests "StorSave" instead, which seems = to=20 > >be some kind of "platform" from AMCC... > > > >Could you be a bit more detailed on this? Like step-by-step, how can I e= xtract this information. >=20 > Its on the 3dm menu under controller settings and unit policies. Attache= d is an image illustrating where it is. I simply don't have that last two options. I might be inaccurate, it's a 9500S-4LP, according to 3dm. Sincerely, Gergely Czuczy mailto: gergely.czuczy@harmless.hu --=20 Weenies test. Geniuses solve problems that arise. --gBBFr7Ir9EOA20Yy Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) owFFUz2P00AQPTjRWKKgoB+lQehsn3NJ7rhA+AoHOgQCcQEENGzWE3sVe9fsjnOX ExKUCIGEaJHgD4BEwU+gRBQU9IgaCn4AYtYRUFi2d998vPdmXhxeXjp45PP7D/dW nr18deDd8uvxSlkT6SwqhZ0pHbWTpB1tdjrJenQiaotJT/bS9Q2cTBJs9y7dnI6G RhNqikbzCvtAuEerVSGUPgkyF9YhDWqaRCeCv7gLylXGKVJG90HpQmn8dzeyQrsJ 2mhLS5MqnfXhQW0I06iySpMYFxgE1zSMagzhAkpIuiGsJckGCIJks99d73e7565C lPSSJISraoowElo6AbuW8/SD03CuQXYSYFx7bbW76uNDuIQ2w2IOw7s3h3fv/Ief 3tqTtUMoueK4JlCQixmCxhlayFHYFMwEKFcOWjtk7I6YtfyvzkLQxkJmTFYgZGoQ zNBBOQeh5819k452DeSKXMjHKbg6y9DR/1TYYokcoUhD2M2VzMEhlg4GAZnBWuL7 GyM4UyJMlW5aabH6NDG2bMHEmpJpDodxHHuof4amLlKYmxo4UMBYEZTGIqRIQhXI KXTD5gxc8epx7SoazyP/DiE3uyCFhm3AQbBHVkhaUFfaVxTeVK606GybeTTJEDpp yQLqGmqdsmyS7bamKPiT54NYC9fQrzV3U5lCSYUuBraKhMy5VArKI0CVIkNQRVE7 Lu4DWRXk7jlOuTjYBqfKil1MjT5GC6co59kohFtobSrfI0MZW6osJy+D0kLKmhOy x4qOcSnY5AHaibpXrrMxUhrrhxHIeCYcGwQ7SksuXMzDIPg3Ovu13J8HJetIpg/Z 4jiWzfFZXoayQOfivA6CKPIa3UbUzJSXxlHME6gVT5pjOwvuu7KGx529bggIqxzG wZMzy4eW/Nb9XdkjB5+lS28eft/8dvHT707v66lfJ6f3sxsfzz9aen18/+epabLy dOPD5cdvt4a3jv54/uUP =AgqQ -----END PGP SIGNATURE----- --gBBFr7Ir9EOA20Yy-- From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 00:41:04 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3ECC016A41A for ; Wed, 5 Dec 2007 00:41:04 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: from mail.h3q.com (mail.h3q.com [213.73.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id 9553F13C45D for ; Wed, 5 Dec 2007 00:41:03 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: (qmail 4229 invoked from network); 5 Dec 2007 00:14:20 -0000 Received: from unknown (HELO goa.local) (smtpsend@195.160.173.123) by mail.h3q.com with AES256-SHA encrypted SMTP; 5 Dec 2007 00:14:20 -0000 Message-ID: <4755ED57.6030603@h3q.com> Date: Wed, 05 Dec 2007 01:14:15 +0100 From: Philipp Wuensche User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: "freebsd-performance@freebsd.org" Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 00:41:04 -0000 Hi, we are running a FreeBSD 7-BETA4 with SCHED_4BSD on a Intel Core2Dual E6600 2.4GHz system for our bittorrent Opentracker. The system handles about 20Kpps (18Mbit/s) incoming and 15kpps (22 Mbit/s) outgoing traffic serving 4000 connections/sec using TCP. The connections are very short-living, all answered within one packet. You can find the system stats at http://outpost.h3q.com/stalker/munin/opentracker/opentracker.html We are now running into some limits at peak time, system is up to 100% and em0 takes about 80% on one CPU while the Opentracker software only takes 10-15% CPU. The system is still responsible and answers all the requests, but we are worried what will happen if the tracker grows at the current rate. Currently we are out of ideas for tuning, so we kindly ask for ideas on tuning the system to bring down the CPU usage from the em and the system CPU usage. We tried tuning the em int_delay and abs_int_delay but without success. We have updated to the latest em driver: em0: port 0x4000-0x401f mem 0xe8000000-0xe801ffff irq 16 at device 0.0 on pci13 em0: Using MSI interrupt em0: Ethernet address: 00:30:48:92:06:5f em0: [FILTER] The debug output of em0 looks like this: em0: CTRL = 0x40140248 RCTL = 0x8002 em0: Packet buffer = Tx=20k Rx=12k em0: Flow control watermarks high = 10240 low = 8740 em0: tx_int_delay = 66, tx_abs_int_delay = 66 em0: rx_int_delay = 32, rx_abs_int_delay = 66 em0: fifo workaround = 0, fifo_reset_count = 0 em0: hw tdh = 183, hw tdt = 183 em0: hw rdh = 139, hw rdt = 139 em0: Num Tx descriptors avail = 223 em0: Tx Descriptors not avail1 = 6225 em0: Tx Descriptors not avail2 = 3 em0: Std mbuf failed = 0 em0: Std mbuf cluster failed = 0 em0: Driver dropped packets = 0 em0: Driver tx dma failure in encap = 0 We did some tuning already and our current sysctl.conf looks like this: kern.ipc.somaxconn=32768 net.inet.icmp.icmplim=3000 kern.ipc.maxsockets=300000 net.inet.tcp.delayed_ack=1 net.inet.tcp.finwait2_timeout=15000 net.inet.tcp.fast_finwait2_recycle=1 net.inet.tcp.maxtcptw=196607 dev.em.0.rx_processing_limit=-1 greetings, cryx From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 00:42:29 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E9B5716A41B for ; Wed, 5 Dec 2007 00:42:29 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: from mail.h3q.com (mail.h3q.com [213.73.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id 7E73D13C468 for ; Wed, 5 Dec 2007 00:42:29 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: (qmail 11167 invoked from network); 5 Dec 2007 00:42:28 -0000 Received: from unknown (HELO goa.local) (smtpsend@195.160.173.123) by mail.h3q.com with AES256-SHA encrypted SMTP; 5 Dec 2007 00:42:28 -0000 Message-ID: <4755F3F3.4070003@h3q.com> Date: Wed, 05 Dec 2007 01:42:27 +0100 From: Philipp Wuensche User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: "freebsd-performance@freebsd.org" References: <4755ED57.6030603@h3q.com> In-Reply-To: <4755ED57.6030603@h3q.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 00:42:30 -0000 Philipp Wuensche wrote: > Hi, > > we are running a FreeBSD 7-BETA4 with SCHED_4BSD on a Intel Core2Dual > E6600 2.4GHz system for our bittorrent Opentracker. I forgot to mention, its FreeBSD amd64. greetings, cryx From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 01:01:38 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0356616A419 for ; Wed, 5 Dec 2007 01:01:38 +0000 (UTC) (envelope-from wmoran@collaborativefusion.com) Received: from mx00.pub.collaborativefusion.com (mx00.pub.collaborativefusion.com [206.210.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id 987DC13C447 for ; Wed, 5 Dec 2007 01:01:37 +0000 (UTC) (envelope-from wmoran@collaborativefusion.com) Received: from working (c-71-60-127-199.hsd1.pa.comcast.net [71.60.127.199]) (AUTH: LOGIN wmoran, SSL: TLSv1/SSLv3,256bits,AES256-SHA) by wingspan with esmtp; Tue, 04 Dec 2007 19:51:32 -0500 id 0005642D.4755F614.00006B2C Date: Tue, 4 Dec 2007 19:51:31 -0500 From: Bill Moran To: Philipp Wuensche Message-Id: <20071204195131.56cb1307.wmoran@collaborativefusion.com> In-Reply-To: <4755ED57.6030603@h3q.com> References: <4755ED57.6030603@h3q.com> Organization: Collaborative Fusion Inc. X-Mailer: Sylpheed 2.4.7 (GTK+ 2.12.1; i386-portbld-freebsd6.2) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: "freebsd-performance@freebsd.org" Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 01:01:38 -0000 Philipp Wuensche wrote: > > Hi, > > we are running a FreeBSD 7-BETA4 with SCHED_4BSD on a Intel Core2Dual > E6600 2.4GHz system for our bittorrent Opentracker. > > The system handles about 20Kpps (18Mbit/s) incoming and 15kpps (22 > Mbit/s) outgoing traffic serving 4000 connections/sec using TCP. The > connections are very short-living, all answered within one packet. > > You can find the system stats at > http://outpost.h3q.com/stalker/munin/opentracker/opentracker.html > > We are now running into some limits at peak time, system is up to 100% > and em0 takes about 80% on one CPU while the Opentracker software only > takes 10-15% CPU. The system is still responsible and answers all the > requests, but we are worried what will happen if the tracker grows at > the current rate. > > Currently we are out of ideas for tuning, so we kindly ask for ideas on > tuning the system to bring down the CPU usage from the em and the system > CPU usage. We tried tuning the em int_delay and abs_int_delay but > without success. Enable polling on the interface and see if that helps. See man polling. -- Bill Moran Collaborative Fusion Inc. wmoran@collaborativefusion.com Phone: 412-422-3463x4023 From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 01:11:55 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 43AAE16A417 for ; Wed, 5 Dec 2007 01:11:55 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: from mail.h3q.com (mail.h3q.com [213.73.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id 861A813C468 for ; Wed, 5 Dec 2007 01:11:54 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: (qmail 19255 invoked from network); 5 Dec 2007 01:11:53 -0000 Received: from unknown (HELO goa.local) (smtpsend@195.160.173.123) by mail.h3q.com with AES256-SHA encrypted SMTP; 5 Dec 2007 01:11:53 -0000 Message-ID: <4755FAD8.5030805@h3q.com> Date: Wed, 05 Dec 2007 02:11:52 +0100 From: Philipp Wuensche User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: Bill Moran References: <4755ED57.6030603@h3q.com> <20071204195131.56cb1307.wmoran@collaborativefusion.com> In-Reply-To: <20071204195131.56cb1307.wmoran@collaborativefusion.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: "freebsd-performance@freebsd.org" Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 01:11:55 -0000 Bill Moran wrote: > > Enable polling on the interface and see if that helps. See man polling. We tried polling already and it didn't help at all. As I understand it, and correct me if I'm wrong, polling helps against high interrupt rates but for that intel gigabit cards have interrupt moderation. We don't have a problem with interrupts (20% CPU) at the moment but with system (100% CPU) as you can see in the system monitoring graphs. Interrupts sometimes peak at, but usually are under, the 2k interrupts/sec limit. greetings, cryx From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 02:34:01 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 28C5516A417 for ; Wed, 5 Dec 2007 02:34:00 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.freebsd.org (Postfix) with ESMTP id B907D13C465 for ; Wed, 5 Dec 2007 02:34:00 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 61E4C46E0B; Tue, 4 Dec 2007 21:20:08 -0500 (EST) Date: Wed, 5 Dec 2007 02:15:06 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Philipp Wuensche In-Reply-To: <4755ED57.6030603@h3q.com> Message-ID: <20071205021327.N41018@fledge.watson.org> References: <4755ED57.6030603@h3q.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: "freebsd-performance@freebsd.org" Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 02:34:01 -0000 On Wed, 5 Dec 2007, Philipp Wuensche wrote: > we are running a FreeBSD 7-BETA4 with SCHED_4BSD on a Intel Core2Dual E6600 > 2.4GHz system for our bittorrent Opentracker. > > The system handles about 20Kpps (18Mbit/s) incoming and 15kpps (22 Mbit/s) > outgoing traffic serving 4000 connections/sec using TCP. The connections are > very short-living, all answered within one packet. > > You can find the system stats at > http://outpost.h3q.com/stalker/munin/opentracker/opentracker.html > > We are now running into some limits at peak time, system is up to 100% and > em0 takes about 80% on one CPU while the Opentracker software only takes > 10-15% CPU. The system is still responsible and answers all the requests, > but we are worried what will happen if the tracker grows at the current > rate. > > Currently we are out of ideas for tuning, so we kindly ask for ideas on > tuning the system to bring down the CPU usage from the em and the system CPU > usage. We tried tuning the em int_delay and abs_int_delay but without > success. Could you show us the output from "top -S" left running for a few minutes in the steady state. Could you try setting the sysctl net.isr.direct to 0, and see how that affects performance, CPU time reports, and "top -S" output? Robert N M Watson Computer Laboratory University of Cambridge > > We have updated to the latest em driver: > > em0: port > 0x4000-0x401f mem 0xe8000000-0xe801ffff irq 16 at device 0.0 on pci13 > em0: Using MSI interrupt > em0: Ethernet address: 00:30:48:92:06:5f > em0: [FILTER] > > The debug output of em0 looks like this: > > em0: CTRL = 0x40140248 RCTL = 0x8002 > em0: Packet buffer = Tx=20k Rx=12k > em0: Flow control watermarks high = 10240 low = 8740 > em0: tx_int_delay = 66, tx_abs_int_delay = 66 > em0: rx_int_delay = 32, rx_abs_int_delay = 66 > em0: fifo workaround = 0, fifo_reset_count = 0 > em0: hw tdh = 183, hw tdt = 183 > em0: hw rdh = 139, hw rdt = 139 > em0: Num Tx descriptors avail = 223 > em0: Tx Descriptors not avail1 = 6225 > em0: Tx Descriptors not avail2 = 3 > em0: Std mbuf failed = 0 > em0: Std mbuf cluster failed = 0 > em0: Driver dropped packets = 0 > em0: Driver tx dma failure in encap = 0 > > We did some tuning already and our current sysctl.conf looks like this: > > kern.ipc.somaxconn=32768 > net.inet.icmp.icmplim=3000 > kern.ipc.maxsockets=300000 > net.inet.tcp.delayed_ack=1 > net.inet.tcp.finwait2_timeout=15000 > net.inet.tcp.fast_finwait2_recycle=1 > net.inet.tcp.maxtcptw=196607 > dev.em.0.rx_processing_limit=-1 > > greetings, > cryx > > _______________________________________________ > freebsd-performance@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-performance > To unsubscribe, send any mail to "freebsd-performance-unsubscribe@freebsd.org" > From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 02:57:47 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9341616A418 for ; Wed, 5 Dec 2007 02:57:47 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from py-out-1112.google.com (py-out-1112.google.com [64.233.166.182]) by mx1.freebsd.org (Postfix) with ESMTP id 3B45A13C45B for ; Wed, 5 Dec 2007 02:57:47 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by py-out-1112.google.com with SMTP id u77so8811181pyb for ; Tue, 04 Dec 2007 18:57:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; bh=5O7m0aXz4lh5sb8czjWVdKOGKZE097XQhidl4Q9CsCw=; b=UH/XwjfbL5NTbB08dDZeBMQWaqATNNvZUbE4dy6V0j6S08iWF0qzCFtQb/zL0BlJ73dXsC9Oz/uXqsa30kBym0CNky23j1orSfU51AYxAN8bTU4a6XXySVrT/mOiHK8+4qa0Nep8NQW+KELV8LM9150Bzx64fbEbop4N09HLfbk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=PMhO+jZuqZ9BeZE9NP5rmkiorNwOXeZ0BTw5uyDLmM6aviQ0q3gyCta5axgRbbjlV4Xx7ZZE+Vgfux+f8KQQo7VwKz0DMv7rVbTamPhBqZqmycOmuz0IOckT6eWocfcHZusHF1d+g0vdJa2umRAqflV1WyI+sPX6qdRO2w0ZZlU= Received: by 10.65.116.10 with SMTP id t10mr19609761qbm.1196822020632; Tue, 04 Dec 2007 18:33:40 -0800 (PST) Received: by 10.65.155.16 with HTTP; Tue, 4 Dec 2007 18:33:40 -0800 (PST) Message-ID: Date: Wed, 5 Dec 2007 11:33:40 +0900 From: "Adrian Chadd" Sender: adrian.chadd@gmail.com To: "Philipp Wuensche" In-Reply-To: <4755FAD8.5030805@h3q.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <4755ED57.6030603@h3q.com> <20071204195131.56cb1307.wmoran@collaborativefusion.com> <4755FAD8.5030805@h3q.com> X-Google-Sender-Auth: 567193e87acb3134 Cc: "freebsd-performance@freebsd.org" Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 02:57:47 -0000 On 05/12/2007, Philipp Wuensche wrote: > As I understand it, and correct me if I'm wrong, polling helps against > high interrupt rates but for that intel gigabit cards have interrupt > moderation. We don't have a problem with interrupts (20% CPU) at the > moment but with system (100% CPU) as you can see in the system > monitoring graphs. Interrupts sometimes peak at, but usually are under, > the 2k interrupts/sec limit. Begin by reading up on the hardware profiling support (hwpmc, pmc, etc) and see if you can get some system and process-specific profiling information. Kernel/System profiling will probably show you an interesting thing or two. One thing I noticed was high in my high-TCP-transaction tests (but not on hardware anywhere near as nice as yours!) was crypto calls for, IIRC, syncookies. Adrian -- Adrian Chadd - adrian@freebsd.org From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 02:59:48 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9E5E216A419 for ; Wed, 5 Dec 2007 02:59:48 +0000 (UTC) (envelope-from jin@george.lbl.gov) Received: from smtp121.sbc.mail.sp1.yahoo.com (smtp121.sbc.mail.sp1.yahoo.com [69.147.64.94]) by mx1.freebsd.org (Postfix) with SMTP id 6E7CA13C459 for ; Wed, 5 Dec 2007 02:59:48 +0000 (UTC) (envelope-from jin@george.lbl.gov) Received: (qmail 5913 invoked from network); 5 Dec 2007 02:33:08 -0000 Received: from unknown (HELO ?192.168.1.238?) (jinmtb@sbcglobal.net@67.111.218.125 with plain) by smtp121.sbc.mail.sp1.yahoo.com with SMTP; 5 Dec 2007 02:33:07 -0000 X-YMail-OSG: SAccPAkVM1lJLG_rySe7T0mWg.luk68_7SyPTathbEBITpsXRsK7QsC4vuDzeptaf7MWNui.vaDZK1mAh.3P3M288rnVXolnvZBcV6MmDxOW7uLPrA-- Message-ID: <47560DDF.60909@george.lbl.gov> Date: Tue, 04 Dec 2007 18:33:03 -0800 From: Jin Guojun User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.13) Gecko/20061027 X-Accept-Language: zh, zh-CN, en MIME-Version: 1.0 To: Philipp Wuensche References: <4755ED57.6030603@h3q.com> <20071204195131.56cb1307.wmoran@collaborativefusion.com> In-Reply-To: <20071204195131.56cb1307.wmoran@collaborativefusion.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Cc: "freebsd-performance@freebsd.org" Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 02:59:48 -0000 Philipp Wuensche wrote: >>Hi, >> >>we are running a FreeBSD 7-BETA4 with SCHED_4BSD on a Intel Core2Dual >>E6600 2.4GHz system for our bittorrent Opentracker. >> >>The system handles about 20Kpps (18Mbit/s) incoming and 15kpps (22 >>Mbit/s) outgoing traffic serving 4000 connections/sec using TCP. The >>connections are very short-living, all answered within one packet. >> >>You can find the system stats at >>http://outpost.h3q.com/stalker/munin/opentracker/opentracker.html >> >>We are now running into some limits at peak time, system is up to 100% >>and em0 takes about 80% on one CPU while the Opentracker software only >>takes 10-15% CPU. The system is still responsible and answers all the >>requests, but we are worried what will happen if the tracker grows at >>the current rate. >> >>Currently we are out of ideas for tuning, so we kindly ask for ideas on >>tuning the system to bring down the CPU usage from the em and the system >>CPU usage. We tried tuning the em int_delay and abs_int_delay but >>without success. >> >> Is there some data for the context switch time? It may tell something. -Jin From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 14:58:50 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 20E2416A417 for ; Wed, 5 Dec 2007 14:58:50 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: from mail.h3q.com (mail.h3q.com [213.73.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id 7ECB513C461 for ; Wed, 5 Dec 2007 14:58:49 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: (qmail 43222 invoked from network); 5 Dec 2007 14:58:47 -0000 Received: from unknown (HELO goa.cryptophone.de) (smtpsend@62.220.7.20) by mail.h3q.com with AES256-SHA encrypted SMTP; 5 Dec 2007 14:58:47 -0000 Message-ID: <4756BCA6.2030201@h3q.com> Date: Wed, 05 Dec 2007 15:58:46 +0100 From: Philipp Wuensche User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: Robert Watson References: <4755ED57.6030603@h3q.com> <20071205021327.N41018@fledge.watson.org> In-Reply-To: <20071205021327.N41018@fledge.watson.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: "freebsd-performance@freebsd.org" Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 14:58:50 -0000 Robert Watson wrote: > > Could you show us the output from "top -S" left running for a few > minutes in the steady state. > > Could you try setting the sysctl net.isr.direct to 0, and see how that > affects performance, CPU time reports, and "top -S" output? I first had too look up what net.isr.direct does and I found http://lists.freebsd.org/pipermail/freebsd-performance/2005-October/001561.html Interesting, seems like the CPU usage switches between system and interrupt, "swi1: net" pops up with 65% CPU. Interrupts go up to 2k interrupts/sec. But in general the system usage stays the same, as far as we can tell in this short time. We will keep the system running with net.isr.direct=0 for a day or so to get a better picture how the system performs over the day. With net.isr.direct=1 CPU states: 1.9% user, 0.0% nice, 43.3% system, 9.8% interrupt, 45.0% idle Mem: 163M Active, 139M Inact, 695M Wired, 44K Cache, 213M Buf, 975M Free Swap: 2048M Total, 2048M Free PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 23 root 1 -68 - 0K 16K CPU0 0 25.4H 66.46% em0 taskq 11 root 1 171 ki31 0K 16K RUN 1 25.5H 47.22% idle: cpu1 12 root 1 171 ki31 0K 16K RUN 0 17.3H 38.92% idle: cpu0 7467 nobody 3 96 0 152M 146M ucond 1 153:18 24.61% opentracke 13 root 1 -32 - 0K 16K RUN 0 785:03 17.33% swi4: cloc With net.isr.direct=0 CPU states: 1.9% user, 0.0% nice, 11.1% system, 42.1% interrupt, 44.9% idle Mem: 151M Active, 139M Inact, 695M Wired, 44K Cache, 213M Buf, 987M Free Swap: 2048M Total, 2048M Free PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 15 root 1 -44 - 0K 16K CPU0 0 2:49 64.70% swi1: net 11 root 1 171 ki31 0K 16K RUN 1 25.5H 46.09% idle: cpu1 12 root 1 171 ki31 0K 16K RUN 0 17.3H 36.18% idle: cpu0 7467 nobody 3 96 0 137M 132M ucond 1 154:28 26.37% opentracke 13 root 1 -32 - 0K 16K WAIT 1 786:38 17.48% swi4: cloc 23 root 1 -68 - 0K 16K - 0 25.4H 2.98% em0 taskq greetings, cryx From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 15:03:31 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6D33E16A46B for ; Wed, 5 Dec 2007 15:03:31 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: from mail.h3q.com (mail.h3q.com [213.73.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id B29CC13C459 for ; Wed, 5 Dec 2007 15:03:30 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: (qmail 45014 invoked from network); 5 Dec 2007 15:03:29 -0000 Received: from unknown (HELO goa.cryptophone.de) (smtpsend@62.220.7.20) by mail.h3q.com with AES256-SHA encrypted SMTP; 5 Dec 2007 15:03:29 -0000 Message-ID: <4756BDC1.2070802@h3q.com> Date: Wed, 05 Dec 2007 16:03:29 +0100 From: Philipp Wuensche User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: Adrian Chadd References: <4755ED57.6030603@h3q.com> <20071204195131.56cb1307.wmoran@collaborativefusion.com> <4755FAD8.5030805@h3q.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: "freebsd-performance@freebsd.org" Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 15:03:31 -0000 Adrian Chadd wrote: > On 05/12/2007, Philipp Wuensche wrote: > >> As I understand it, and correct me if I'm wrong, polling helps against >> high interrupt rates but for that intel gigabit cards have interrupt >> moderation. We don't have a problem with interrupts (20% CPU) at the >> moment but with system (100% CPU) as you can see in the system >> monitoring graphs. Interrupts sometimes peak at, but usually are under, >> the 2k interrupts/sec limit. > > Begin by reading up on the hardware profiling support (hwpmc, pmc, > etc) and see if you can get some system and process-specific profiling > information. Oh interesting stuff, I definitely have to take a look into that. Nice. > Kernel/System profiling will probably show you an interesting thing or > two. One thing I noticed was high in my high-TCP-transaction tests > (but not on hardware anywhere near as nice as yours!) was crypto calls > for, IIRC, syncookies. We tried with syncookies enabled and disabled, no change at all. But as you already said, crypto calls on this kind of hardware are not that expensive ;-) greetings, cryx From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 16:16:19 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2D5AB16A468 for ; Wed, 5 Dec 2007 16:16:19 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost2.sentex.ca (smarthost2.sentex.ca [205.211.164.50]) by mx1.freebsd.org (Postfix) with ESMTP id E7EA913C45D for ; Wed, 5 Dec 2007 16:16:18 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by smarthost2.sentex.ca (8.14.1/8.13.8) with ESMTP id lB5GGHnQ086846; Wed, 5 Dec 2007 11:16:17 -0500 (EST) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.13.8/8.13.3) with ESMTP id lB5GGGvb029587 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 5 Dec 2007 11:16:16 -0500 (EST) (envelope-from mike@sentex.net) Message-Id: <200712051616.lB5GGGvb029587@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Wed, 05 Dec 2007 11:18:19 -0500 To: Philipp Wuensche , From: Mike Tancsa In-Reply-To: <4755ED57.6030603@h3q.com> References: <4755ED57.6030603@h3q.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Cc: Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 16:16:19 -0000 At 07:14 PM 12/4/2007, Philipp Wuensche wrote: >The debug output of em0 looks like this: > >em0: CTRL = 0x40140248 RCTL = 0x8002 >em0: Packet buffer = Tx=20k Rx=12k >em0: Flow control watermarks high = 10240 low = 8740 >em0: tx_int_delay = 66, tx_abs_int_delay = 66 >em0: rx_int_delay = 32, rx_abs_int_delay = 66 >em0: fifo workaround = 0, fifo_reset_count = 0 >em0: hw tdh = 183, hw tdt = 183 >em0: hw rdh = 139, hw rdt = 139 >em0: Num Tx descriptors avail = 223 >em0: Tx Descriptors not avail1 = 6225 >em0: Tx Descriptors not avail2 = 3 >em0: Std mbuf failed = 0 >em0: Std mbuf cluster failed = 0 >em0: Driver dropped packets = 0 >em0: Driver tx dma failure in encap = 0 If you do a sysctl -w dev.em.0.stats=1 It will spit the nic stats to syslog. What are the results ? Also, what does ifconfig em0 look like (i.e. what options do you have set, speed etc) ---Mike From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 17:23:12 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E574B16A417 for ; Wed, 5 Dec 2007 17:23:12 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: from mail.h3q.com (mail.h3q.com [213.73.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id 5211B13C46B for ; Wed, 5 Dec 2007 17:23:12 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: (qmail 79945 invoked from network); 5 Dec 2007 17:23:10 -0000 Received: from unknown (HELO goa.cryptophone.de) (smtpsend@62.220.7.20) by mail.h3q.com with AES256-SHA encrypted SMTP; 5 Dec 2007 17:23:10 -0000 Message-ID: <4756DE7E.1000104@h3q.com> Date: Wed, 05 Dec 2007 18:23:10 +0100 From: Philipp Wuensche User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: Mike Tancsa References: <4755ED57.6030603@h3q.com> <200712051616.lB5GGGvb029587@lava.sentex.ca> In-Reply-To: <200712051616.lB5GGGvb029587@lava.sentex.ca> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-performance@freebsd.org Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 17:23:13 -0000 Mike Tancsa wrote: > At 07:14 PM 12/4/2007, Philipp Wuensche wrote: > >> The debug output of em0 looks like this: >> >> em0: CTRL = 0x40140248 RCTL = 0x8002 >> em0: Packet buffer = Tx=20k Rx=12k >> em0: Flow control watermarks high = 10240 low = 8740 >> em0: tx_int_delay = 66, tx_abs_int_delay = 66 >> em0: rx_int_delay = 32, rx_abs_int_delay = 66 >> em0: fifo workaround = 0, fifo_reset_count = 0 >> em0: hw tdh = 183, hw tdt = 183 >> em0: hw rdh = 139, hw rdt = 139 >> em0: Num Tx descriptors avail = 223 >> em0: Tx Descriptors not avail1 = 6225 >> em0: Tx Descriptors not avail2 = 3 >> em0: Std mbuf failed = 0 >> em0: Std mbuf cluster failed = 0 >> em0: Driver dropped packets = 0 >> em0: Driver tx dma failure in encap = 0 > > If you do a > sysctl -w dev.em.0.stats=1 > > It will spit the nic stats to syslog. What are the results ? em0: Excessive collisions = 0 em0: Sequence errors = 0 em0: Defer count = 0 em0: Missed Packets = 12876719 em0: Receive No Buffers = 5950326 em0: Receive Length Errors = 0 em0: Receive errors = 0 em0: Crc errors = 0 em0: Alignment errors = 0 em0: Collision/Carrier extension errors = 0 em0: RX overruns = 56256 em0: watchdog timeouts = 0 em0: XON Rcvd = 0 em0: XON Xmtd = 0 em0: XOFF Rcvd = 0 em0: XOFF Xmtd = 0 em0: Good Packets Rcvd = 3384408375 em0: Good Packets Xmtd = 2657550034 em0: TSO Contexts Xmtd = 6925441 em0: TSO Contexts Failed = 0 > Also, > what does ifconfig em0 look like (i.e. what options do you have set, > speed etc) Its on a 100Mbit/s switch, we haven't changed the options: em0: flags=8843 metric 0 mtu 1500 options=19b media: Ethernet autoselect (100baseTX ) greetings, cryx From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 17:29:12 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B0BB316A417 for ; Wed, 5 Dec 2007 17:29:12 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1.sentex.ca [64.7.153.18]) by mx1.freebsd.org (Postfix) with ESMTP id 5BA9713C459 for ; Wed, 5 Dec 2007 17:29:12 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by smarthost1.sentex.ca (8.13.8/8.13.8) with ESMTP id lB5HTBr3082929; Wed, 5 Dec 2007 12:29:11 -0500 (EST) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.13.8/8.13.3) with ESMTP id lB5HTAkn029896 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 5 Dec 2007 12:29:10 -0500 (EST) (envelope-from mike@sentex.net) Message-Id: <200712051729.lB5HTAkn029896@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Wed, 05 Dec 2007 12:31:12 -0500 To: Philipp Wuensche From: Mike Tancsa In-Reply-To: <4756DE7E.1000104@h3q.com> References: <4755ED57.6030603@h3q.com> <200712051616.lB5GGGvb029587@lava.sentex.ca> <4756DE7E.1000104@h3q.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Cc: freebsd-performance@freebsd.org Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 17:29:12 -0000 At 12:23 PM 12/5/2007, Philipp Wuensche wrote: >Mike Tancsa wrote: > > At 07:14 PM 12/4/2007, Philipp Wuensche wrote: > > > >> The debug output of em0 looks like this: > >> > >> em0: CTRL = 0x40140248 RCTL = 0x8002 > >> em0: Packet buffer = Tx=20k Rx=12k > >> em0: Flow control watermarks high = 10240 low = 8740 > >> em0: tx_int_delay = 66, tx_abs_int_delay = 66 > >> em0: rx_int_delay = 32, rx_abs_int_delay = 66 > >> em0: fifo workaround = 0, fifo_reset_count = 0 > >> em0: hw tdh = 183, hw tdt = 183 > >> em0: hw rdh = 139, hw rdt = 139 > >> em0: Num Tx descriptors avail = 223 > >> em0: Tx Descriptors not avail1 = 6225 > >> em0: Tx Descriptors not avail2 = 3 > >> em0: Std mbuf failed = 0 > >> em0: Std mbuf cluster failed = 0 > >> em0: Driver dropped packets = 0 > >> em0: Driver tx dma failure in encap = 0 > > > > If you do a > > sysctl -w dev.em.0.stats=1 > > > > It will spit the nic stats to syslog. What are the results ? > >em0: Excessive collisions = 0 >em0: Sequence errors = 0 >em0: Defer count = 0 >em0: Missed Packets = 12876719 >em0: Receive No Buffers = 5950326 >em0: Receive Length Errors = 0 >em0: Receive errors = 0 >em0: Crc errors = 0 >em0: Alignment errors = 0 >em0: Collision/Carrier extension errors = 0 >em0: RX overruns = 56256 >em0: watchdog timeouts = 0 >em0: XON Rcvd = 0 >em0: XON Xmtd = 0 >em0: XOFF Rcvd = 0 >em0: XOFF Xmtd = 0 >em0: Good Packets Rcvd = 3384408375 >em0: Good Packets Xmtd = 2657550034 >em0: TSO Contexts Xmtd = 6925441 >em0: TSO Contexts Failed = 0 > > > > Also, > > what does ifconfig em0 look like (i.e. what options do you have set, > > speed etc) > >Its on a 100Mbit/s switch, we haven't changed the options: > >em0: flags=8843 metric 0 mtu 1500 > options=19b > media: Ethernet autoselect (100baseTX ) Some people have reported that TSO is a "bad thing" on 100Mb. Can you try disabling that ? Also, you seem to have a lot of RX overruns and missed packets such that the nic cannot process things fast enough. I havent done any benchmarks yet, but the Yandex people claim their modified EM driver can handle higher PPS rates than the stock em driver. Not sure if they have a RELENG_7 port or not but they might have some insight. ---Mike From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 22:19:57 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9A21B16A417 for ; Wed, 5 Dec 2007 22:19:57 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: from mail.h3q.com (mail.h3q.com [213.73.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id 13DE113C447 for ; Wed, 5 Dec 2007 22:19:56 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: (qmail 53582 invoked from network); 5 Dec 2007 22:19:55 -0000 Received: from unknown (HELO goa.local) (smtpsend@85.179.28.51) by mail.h3q.com with AES256-SHA encrypted SMTP; 5 Dec 2007 22:19:55 -0000 Message-ID: <475723FB.4020304@h3q.com> Date: Wed, 05 Dec 2007 23:19:39 +0100 From: Philipp Wuensche User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: Mike Tancsa References: <4755ED57.6030603@h3q.com> <200712051616.lB5GGGvb029587@lava.sentex.ca> <4756DE7E.1000104@h3q.com> <200712051729.lB5HTAkn029896@lava.sentex.ca> In-Reply-To: <200712051729.lB5HTAkn029896@lava.sentex.ca> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-performance@freebsd.org Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 22:19:57 -0000 Mike Tancsa wrote: > At 12:23 PM 12/5/2007, Philipp Wuensche wrote: >> Mike Tancsa wrote: >> > At 07:14 PM 12/4/2007, Philipp Wuensche wrote: >> > >> >> The debug output of em0 looks like this: >> >> >> >> em0: CTRL = 0x40140248 RCTL = 0x8002 >> >> em0: Packet buffer = Tx=20k Rx=12k >> >> em0: Flow control watermarks high = 10240 low = 8740 >> >> em0: tx_int_delay = 66, tx_abs_int_delay = 66 >> >> em0: rx_int_delay = 32, rx_abs_int_delay = 66 >> >> em0: fifo workaround = 0, fifo_reset_count = 0 >> >> em0: hw tdh = 183, hw tdt = 183 >> >> em0: hw rdh = 139, hw rdt = 139 >> >> em0: Num Tx descriptors avail = 223 >> >> em0: Tx Descriptors not avail1 = 6225 >> >> em0: Tx Descriptors not avail2 = 3 >> >> em0: Std mbuf failed = 0 >> >> em0: Std mbuf cluster failed = 0 >> >> em0: Driver dropped packets = 0 >> >> em0: Driver tx dma failure in encap = 0 >> > >> > If you do a >> > sysctl -w dev.em.0.stats=1 >> > >> > It will spit the nic stats to syslog. What are the results ? >> >> em0: Excessive collisions = 0 >> em0: Sequence errors = 0 >> em0: Defer count = 0 >> em0: Missed Packets = 12876719 >> em0: Receive No Buffers = 5950326 >> em0: Receive Length Errors = 0 >> em0: Receive errors = 0 >> em0: Crc errors = 0 >> em0: Alignment errors = 0 >> em0: Collision/Carrier extension errors = 0 >> em0: RX overruns = 56256 >> em0: watchdog timeouts = 0 >> em0: XON Rcvd = 0 >> em0: XON Xmtd = 0 >> em0: XOFF Rcvd = 0 >> em0: XOFF Xmtd = 0 >> em0: Good Packets Rcvd = 3384408375 >> em0: Good Packets Xmtd = 2657550034 >> em0: TSO Contexts Xmtd = 6925441 >> em0: TSO Contexts Failed = 0 >> >> >> > Also, >> > what does ifconfig em0 look like (i.e. what options do you have set, >> > speed etc) >> >> Its on a 100Mbit/s switch, we haven't changed the options: >> >> em0: flags=8843 metric 0 mtu 1500 >> >> options=19b >> media: Ethernet autoselect (100baseTX ) > > Some people have reported that TSO is a "bad thing" on 100Mb. Can you > try disabling that ? Also, you seem to have a lot of RX overruns and > missed packets such that the nic cannot process things fast enough. I > havent done any benchmarks yet, but the Yandex people claim their > modified EM driver can handle higher PPS rates than the stock em > driver. Not sure if they have a RELENG_7 port or not but they might > have some insight. After switching to net.isr.direct=0 and 346609775 good packets later, RX overruns haven't increased by one! Thats nice. Still interrupt is using up the CPU. I'm not quite sure if polling would help now!? current stats: em0: Excessive collisions = 0 em0: Sequence errors = 0 em0: Defer count = 0 em0: Missed Packets = 12885592 em0: Receive No Buffers = 5953357 em0: Receive Length Errors = 0 em0: Receive errors = 0 em0: Crc errors = 0 em0: Alignment errors = 0 em0: Collision/Carrier extension errors = 0 em0: RX overruns = 56296 em0: watchdog timeouts = 0 em0: XON Rcvd = 0 em0: XON Xmtd = 0 em0: XOFF Rcvd = 0 em0: XOFF Xmtd = 0 em0: Good Packets Rcvd = 3731018150 em0: Good Packets Xmtd = 2936659631 em0: TSO Contexts Xmtd = 7734211 em0: TSO Contexts Failed = 0 We will try disabling TSO to see if anything changes. greetings, cryx From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 22:28:21 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 407EC16A418 for ; Wed, 5 Dec 2007 22:28:21 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1.sentex.ca [64.7.153.18]) by mx1.freebsd.org (Postfix) with ESMTP id 022B613C4CE for ; Wed, 5 Dec 2007 22:28:20 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by smarthost1.sentex.ca (8.13.8/8.13.8) with ESMTP id lB5MSK9G014601; Wed, 5 Dec 2007 17:28:20 -0500 (EST) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.13.8/8.13.3) with ESMTP id lB5MSJYA031170 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 5 Dec 2007 17:28:20 -0500 (EST) (envelope-from mike@sentex.net) Message-Id: <200712052228.lB5MSJYA031170@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Wed, 05 Dec 2007 17:30:22 -0500 To: Philipp Wuensche From: Mike Tancsa In-Reply-To: <475723FB.4020304@h3q.com> References: <4755ED57.6030603@h3q.com> <200712051616.lB5GGGvb029587@lava.sentex.ca> <4756DE7E.1000104@h3q.com> <200712051729.lB5HTAkn029896@lava.sentex.ca> <475723FB.4020304@h3q.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Cc: freebsd-performance@freebsd.org Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 22:28:21 -0000 At 05:19 PM 12/5/2007, Philipp Wuensche wrote: >After switching to net.isr.direct=0 and 346609775 good packets later, RX >overruns haven't increased by one! Thats nice. Still interrupt is using >up the CPU. I'm not quite sure if polling would help now!? Polling is helpful to prevent livelock. Not sure if thats happening to you. What firewall (if any) are you using ? pf used to be a lot slower than ipfw. The Yandex driver is at http://people.yandex-team.ru/~wawa/ but its against RELENG_6 only I think. Another thing to try is to turn back on Fast Interrupt handling. I think its currently disabled. In if_em.h, try adding #define EM_FAST_IRQ 1 and then recompile the kernel or just driver. >We will try disabling TSO to see if anything changes. If you have TCP in your app, it seems thats the thing to do according to the Intel developer. ---Mike From owner-freebsd-performance@FreeBSD.ORG Wed Dec 5 23:03:01 2007 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DEA8616A41A for ; Wed, 5 Dec 2007 23:03:01 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: from mail.h3q.com (mail.h3q.com [213.73.89.199]) by mx1.freebsd.org (Postfix) with ESMTP id 3031413C447 for ; Wed, 5 Dec 2007 23:03:00 +0000 (UTC) (envelope-from cryx-freebsd@h3q.com) Received: (qmail 65283 invoked from network); 5 Dec 2007 23:02:59 -0000 Received: from unknown (HELO goa.local) (smtpsend@85.179.28.51) by mail.h3q.com with AES256-SHA encrypted SMTP; 5 Dec 2007 23:02:59 -0000 Message-ID: <47572E23.2050303@h3q.com> Date: Thu, 06 Dec 2007 00:02:59 +0100 From: Philipp Wuensche User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: Mike Tancsa References: <4755ED57.6030603@h3q.com> <200712051616.lB5GGGvb029587@lava.sentex.ca> <4756DE7E.1000104@h3q.com> <200712051729.lB5HTAkn029896@lava.sentex.ca> <475723FB.4020304@h3q.com> <200712052228.lB5MSJYA031170@lava.sentex.ca> In-Reply-To: <200712052228.lB5MSJYA031170@lava.sentex.ca> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-performance@freebsd.org Subject: Re: tuning for high connection rates X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 23:03:02 -0000 Mike Tancsa wrote: > At 05:19 PM 12/5/2007, Philipp Wuensche wrote: > >> After switching to net.isr.direct=0 and 346609775 good packets later, RX >> overruns haven't increased by one! Thats nice. Still interrupt is using >> up the CPU. I'm not quite sure if polling would help now!? > > Polling is helpful to prevent livelock. Not sure if thats happening to > you. No problems with livelock, system is usable all the time. > What firewall (if any) are you using ? pf used to be a lot slower > than ipfw. We use pf. Disabling it at all gives no noticable performance boost because instead performance drops due to connections from networks we currently filter. Maybe ipfw is faster, we could try that but would like to use pf furthermore. > Another thing to try is to turn back on Fast Interrupt handling. I think > its currently disabled. > > In if_em.h, try adding > > #define EM_FAST_IRQ 1 > > and then recompile the kernel or just driver. Seems to be enabled by default on freebsd7, from our if_em.h: /* Set FAST handling on by default */ #if __FreeBSD_version > 700000 #define EM_FAST_IRQ #endif greetings, cryx