From owner-freebsd-hardware Mon Jul 17 02:38:13 1995 Return-Path: hardware-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id CAA18827 for hardware-outgoing; Mon, 17 Jul 1995 02:38:13 -0700 Received: from gndrsh.aac.dev.com (gndrsh.aac.dev.com [198.145.92.241]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id CAA18818 for ; Mon, 17 Jul 1995 02:38:09 -0700 Received: (from rgrimes@localhost) by gndrsh.aac.dev.com (8.6.11/8.6.9) id CAA01233; Mon, 17 Jul 1995 02:38:35 -0700 From: "Rodney W. Grimes" Message-Id: <199507170938.CAA01233@gndrsh.aac.dev.com> Subject: Re: Ideal hardware config for FreeBSD? To: filo@yahoo.com (David Filo) Date: Mon, 17 Jul 1995 02:38:35 -0700 (PDT) Cc: hardware@freebsd.org In-Reply-To: <199507170910.CAA16517@lobo.yahoo.com> from "David Filo" at Jul 17, 95 02:10:50 am X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 5934 Sender: hardware-owner@freebsd.org Precedence: bulk > > Hi, > > I would appreciate suggestions on what people feel is the best > hardware setup to run FreeBSD for highest performance. Mainly I'm > interested in which SCSI and Ethernet cards to use. Currently we're > using Buslogic 946C and 3Com 3c509 cards along with an ASUS P54TP4 > motherboard and a Pentium 100. For something that works very well, and reasonably fast use an ASUS SC-200 NCR 53C810 based controller (in stock $72.00), and a Compex ENET32-PCI (in stock $103.00) for 10Mb/s or SMC 9332 (in stock $156.00) for 10/100Mb/s. > The Buslogic card is currently giving us problems because it's not > being recognized as a PCI device (instead it shows up as an async ISA > device). I've seen this problem discussed in the archives but didn't > see any solutions. Only solution I have is to use an older version of > the Buslogic firmware. That is, we have problems with version 4.25J > while version 4.23 seems to work fine. Which SCSI card is generally > thought to give the best performance? The bt946 and aha2940 may have a slight edge over the NCR card due to the fact they have local memory for firmware, but given the recent headaches with bt946 cards I would either go for an NCR card or a 2940, given cost I would (and am) running NCR cards. I have yet to get the 946C revision E cards to play cleanly in a system, though I can now get them to at least boot on 4 different MB's. At the end of this email is a patch that has been commited to FreeBSD that will snap these revision E boards into sync mode for you (this is relative to 2.0.5R): Can you describe the ``problems'' you see running the 4.25J firmware? I am getting device timeouts mostly, which it does not recover from, so once one of the occurs it dies. On another MB it cases EISA watchdog times outs (and this is a PCI/ISA board, go figure :-(). > As for Ethernet, we aren't having any problems with the 3Com card. > Just wondering if there is a better solution, like the 3Com 3c590 for > example assuming it's supported. Get the Compex card, can't say enough about them, the FreeBSD driver for this card is one of the best drivers we have! (This is a DEC 21040 based card that uses the if_de.c driver by Matt Thomas.) It is the card I sell with every PCI system that wants ethernet, in my book there are no other options for PCI 10Mb/s ethernet. > So in general any info on how to construct a high performance FreeBSD > box would be greatly appreciated. Talk to me via email or telephone (finger my email address for the phone number) that is what I do for a living now :-) Index: bt742a.c =================================================================== RCS file: /home/ncvs/src/sys/i386/isa/bt742a.c,v retrieving revision 1.36 retrieving revision 1.38 diff -c -r1.36 -r1.38 *** 1.36 1995/05/30 08:01:21 --- 1.38 1995/06/25 17:45:05 *************** *** 12,18 **** * on the understanding that TFS is not responsible for the correct * functioning of this software in any circumstances. * ! * $Id: bt742a.c,v 1.36 1995/05/30 08:01:21 rgrimes Exp $ */ /* --- 12,18 ---- * on the understanding that TFS is not responsible for the correct * functioning of this software in any circumstances. * ! * $Id: bt742a.c,v 1.38 1995/06/25 17:45:05 joerg Exp $ */ /* *************** *** 121,128 **** /* The following command appeared at FirmWare 3.31 */ #define BT_ROUND_ROBIN 0x8f /* Enable/Disable(default) round robin */ ! #define BT_DISABLE 0x00 /* Parameter value for Disable */ ! #define BT_ENABLE 0x01 /* Parameter value for Enable */ struct bt_cmd_buf { u_char byte[16]; --- 121,128 ---- /* The following command appeared at FirmWare 3.31 */ #define BT_ROUND_ROBIN 0x8f /* Enable/Disable(default) round robin */ ! #define BT_STRICT_ROUND_ROBIN 0x00 /* Parameter value for strict mode */ ! #define BT_AGRES_ROUND_ROBIN 0x01 /* Parameter value for backword comp */ struct bt_cmd_buf { u_char byte[16]; *************** *** 334,340 **** u_char num_mbx; /* Number of mailbox */ int32 mbx_base; /* mailbox base address */ struct { ! u_char resv1:2; /* ??? */ u_char maxsync:1; /* ON: 10MB/s , OFF: 5MB/s */ u_char resv2:2; /* ??? */ u_char sync:1; /* ON: Sync, OFF: async ONLY!! */ --- 334,341 ---- u_char num_mbx; /* Number of mailbox */ int32 mbx_base; /* mailbox base address */ struct { ! u_char resv1:1; /* ??? */ ! u_char force:1; /* ON: force sync */ u_char maxsync:1; /* ON: 10MB/s , OFF: 5MB/s */ u_char resv2:2; /* ??? */ u_char sync:1; /* ON: Sync, OFF: async ONLY!! */ *************** *** 1306,1311 **** --- 1307,1317 ---- * If board has a capbility of Syncrhonouse mode, * Get a SCSI Synchronous value */ + + if (info->s.force) { /* Assume fast sync capability */ + info->s.sync = 1; /* It's appear at 4.25? version */ + info->s.maxsync = 1; + } if ( info->s.sync ) { bt_cmd(unit, 1, sizeof(sync), 100, &sync,BT_GET_SYNC_VALUE,sizeof(sync)); *************** *** 1383,1392 **** * BT_ROUND_ROBIN command amurai@spec.co.jp */ if ( bID.firm_revision >= '3' ) { ! printf("bt%d: Enabling Round robin scheme\n", unit); ! bt_cmd(unit, 1, 0, 0, 0, BT_ROUND_ROBIN, BT_ENABLE); } else { ! printf("bt%d: Not Enabling Round robin scheme\n", unit); } } --- 1389,1398 ---- * BT_ROUND_ROBIN command amurai@spec.co.jp */ if ( bID.firm_revision >= '3' ) { ! printf("bt%d: Using Strict Round robin scheme\n", unit); ! bt_cmd(unit, 1, 0, 0, 0, BT_ROUND_ROBIN, BT_STRICT_ROUND_ROBIN); } else { ! printf("bt%d: Not using Strict Round robin scheme\n", unit); } } -- Rod Grimes rgrimes@gndrsh.aac.dev.com Accurate Automation Company Reliable computers for FreeBSD