:: Home :: Computing :: Downloads :: Scooter :: Links :: Music :: Nonsense :: Mail :: |
---|
This is a quick survey of the Linux related stuff to run a 64 bit multi processor (SMP) system under Linux based on a MSI K8T Master2 FAR mainboard. I don't try to explain the usual installation details (for instance, which partitions I have made, what they are good for and so on and so on...). Requests for additional information may be directed by eMail to the author.
After running Solaris on a system with two UltraSPARC CPUs it is my humble opinion, that single processor systems are like toys. For my first Intel-based SMP system I choose the MSI K8T Master2 FAR mainboard, because it
The system runs on Gentoo Linux (2005.0) , because this is one of the last distributions to come without autoprobing or -configuration, which is really not wanted here. The nice one with Gentoo is, that you are not bound to a specific hardware architecture after the final installation. This machine runs with an Opteron (32/64 bit) SMP kernel and x86 user land, which will be migrated to amd64, when amd64 seems to be stable enough -- nice, eh?
There is also a NetBSD 2.0.1 system on a separate disk, which runs without problems.
There are a few notes to get the system up and running nicely:
The mainboard supports AMD Opteron(s) 244 and higher. My system is powered by two AMD Opteron 250 CPUs.
Output from "cat /proc/cpuinfo":
processor : 0 vendor_id : AuthenticAMD cpu family : 15 model : 5 model name : AMD Opteron(tm) Processor 250 stepping : 10 cpu MHz : 2406.617 cache size : 1024 KB physical id : 0 siblings : 1 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 pni syscall nx mmxext lm 3dnowext 3dnow bogomips : 4718.59 processor : 1 vendor_id : AuthenticAMD cpu family : 15 model : 5 model name : AMD Opteron(tm) Processor 250 stepping : 10 cpu MHz : 2406.617 cache size : 1024 KB physical id : 0 siblings : 1 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 pni syscall nx mmxext lm 3dnowext 3dnow bogomips : 4800.51
Output from "dmesg | grep Bogo":
Calibrating delay loop... 4718.59 BogoMIPS (lpj=2359296) Calibrating delay loop... 4800.51 BogoMIPS (lpj=2400256) Total of 2 processors activated (9519.10 BogoMIPS).
As noted above, Opteron processors tend to get very, very hot. AMD talks about operating temperatures from 70 degrees (Celsius). It is essential to place them in a case, which provides adequate airflow. So I got a Chieftec Mesh big tower, which I configured with 2 120mm fans on the back and two 92mm fans on the side. This case also provides additional air vents in the main side panel.
Typical CPU Temperatures (Celsius) | ||
---|---|---|
Processor | Normal Temperature | Temperature Under Load |
CPU0 | 51 | 50 |
CPU1 | 57 | 55 |
I wrote a little Perl script for monitoring the temperatures, voltages an so on. It depends on the i2c modules w83627hf, i2c_sensor, i2c_isa and i2c_core and is available as pc-0505.gz on my download site.
The system monitor gkrellm displays running under X also the i2c stuff out-of-the-box in nice charts, when the same modules are loaded.
The mainboard supports 128-bit DDR Register DIMM at 200, 266, 333 or 400 MHz. Each of the 4 DIMM slots supports sticks up to 2 GByte. The DIMMs have to support registered (Reg) ECC memory validation.
I run two 512 MByte KingstonValue DIMM 400MHz modules (ECC, Reg). To get Linux/x86 working with 1024 MByte, I had to turn on the Kernel options 'CONFIG_NOHIGHMEM' and 'CONFIG_HIGHMEM4G'.
Output from "free":
total used free shared buffers cached Mem: 1034856 747616 287240 0 12 432604 -/+ buffers/cache: 315000 719856 Swap: 1041336 0 1041336
MSI says, that SPM mainboards may run only with 333 MHz DIMMs, but at least this particular one likes 400 MHz DIMMs too.
I prefer SCSI over IDE systems. So the storage devices are hosted on a DawiControl DC-2980 U2W (Symbios Logic 53c895 chip, Ultra2-Wide SCSI), which works well with all free Unices.
There is no BIOS setting to boot from SCSI -- so I worked around this misfeature with deactivating all other boot devices and activating booting from "Other Devices".
Output from "lshw -class storage":
*-scsi description: SCSI storage controller product: 53c895 vendor: LSI Logic / Symbios Logic physical id: 7 bus info: pci@00:07.0 logical name: scsi0 version: 01 width: 32 bits clock: 33MHz capabilities: scsi bus_master scsi-host configuration: driver=sym53c8xx resources: ioport:d400-d4ff iomemory:ee010000-ee0100ff iomemory:ee011000-ee011fff irq:18
The mainboard's got 2 SATA and 2 IDE ports on board, which are permanently deactivated here with BIOS settings.
Output from "lshw -class disk":
*-disk:0 description: SCSI Disk product: DNES-309170W vendor: IBM physical id: 0.0.0 bus info: scsi@0.0:0.0 logical name: /dev/sda version: SAH0 size: 8748MB capacity: 8964MB capabilities: 7200rpm configuration: ansiversion=3
Output from "lshw -class disk":
*-cdrom:0 description: DVD reader product: DVD-ROM DVD-305 vendor: PIONEER physical id: 0.5.0 bus info: scsi@0.0:5.0 logical name: /dev/cdrom logical name: /dev/dvd logical name: /dev/scd0 logical name: /dev/sr0 version: 1.03 capabilities: removable audio dvd configuration: ansiversion=2
Output from "lshw -class disk":
*-cdrom:1 description: CD-R/CD-RW writer product: CD-W512SB vendor: TEAC physical id: 0.6.0 bus info: scsi@0.0:6.0 logical name: /dev/cdrom1 logical name: /dev/scd1 logical name: /dev/sr1 version: 1.0B capabilities: removable audio cd-r cd-rw configuration: ansiversion=2
Output from "lshw -class disk":
*-magnetooptical description: SCSI Magneto-optical Disk product: MCE3130SS vendor: FUJITSU physical id: 0.4.0 bus info: scsi@0.0:4.0 logical name: /dev/sde version: 0070 capabilities: removable configuration: ansiversion=2
This graphic card is a Matrox Millennium G550 AGP with 32 MByte SDRAM. Matrox graphic adapters are known to produce a very nice 2D output (which is mostly needed here), but are also capable to run 3D games based on the Quake III or Quake II engine (sometimes needed here).
The G series got their own frame buffer driver in the kernel, which runs smoother and faster than the standard VESA driver. It was broken in the first 2.6 kernels but was fixed in kernel 2.6.11. To get it up and running, you'll need the following kernel options:
# Graphics support # CONFIG_FB=y CONFIG_VIDEO_SELECT=y CONFIG_FB_MATROX=y CONFIG_FB_MATROX_G=y
The kernel needs an append switch, like "video=matrox:vesa:0x11A" (which turns the console in a graphic mode of 1200x1024 with 16 bit colors) to make use of the frame buffer driver.
The graphic card provides a nice X display on 1600x1200 with 16 bit colors with the following settings in the file /etc/X11/xorg.conf:
Section "Module" Load "glx" Load "dri" EndSection Section "Device" Identifier "Generic Videocard" VendorName "Matrox G550 AGP" Driver "mga" ChipSet "mgag550" VideoRAM 32768 Card "Matrox Millennium G550" BusID "PCI:01:00:0" Option "AGPMode" "4" EndSection Section "DRI" Mode 0666 EndSection
The cream of the crop: The Matrox G series are passive cooled cards, which don't cause heat or cooler noise.
The noise-makeing device on my system is a Creative Soundblaster 16 PCI The card is supported by every application here around and runs fine since the old days[TM] of kernel 2.0/2.2.
It is activated with the OSS kernel module es1371.
Output from "lshw -class multimedia":
*-multimedia description: Multimedia audio controller product: 5880 AudioPCI vendor: Ensoniq physical id: 6 bus info: pci@00:06.0 version: 02 width: 32 bits clock: 33MHz capabilities: bus_master cap_list configuration: driver=es1371 resources: ioport:d000-d03f irq:17
It needs the kernel module snd_es1371 and some other modules, especially for compatibility you should activate snd-pcm-oss.
Output from "lshw -class multimedia":
*-multimedia description: Multimedia audio controller product: 5880 AudioPCI vendor: Ensoniq physical id: 6 bus info: pci@00:06.0 version: 02 width: 32 bits clock: 33MHz capabilities: bus_master cap_list configuration: driver=ENS1371 resources: ioport:d000-d03f irq:17
I prefer my good, old IBM 102 keys 'klick' PS/2 keyboard -- 'nuff said.
No needed for IrDA on a desktop here.
The mainboard comes with 6 USB 2.0 ports. As of today the Linux kernel 2.6.11 recognizes with it's ehci driver only the 2 ports on the backside as USB 2.0 and runs them with full speed. The other ports on the mainboard, which may be connected to the case front or so, are recognized only as USB 1.1. This seems to be a known quirk with VIAs VT82xxxxx USB controllers and the Linux kernel, which will hopefully worked out soon in the future.
As I don't need the wrong recognized USB ports anyhow, I don't feel any need to build a kernel with uhci support to test them.
The MSI K8T Master2 FAR comes with an on board Broadcom NetXtreme BCM5705 Gigabit ethernet controller, which provides data rates from 1000, 100 or 10 Mbit per second. It needs the tg3 driver (CONFIG_TIGON3 in the Ethernet 1000 Mbit section).
Output from "mii-tool -v eth0":
eth0: negotiated 100baseTx-FD flow-control, link ok product info: vendor 00:08:18, model 26 rev 2 basic mode: autonegotiation enabled basic status: autonegotiation complete, link ok capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
As I got not a single other device running with Firewire, I can't say something anything about the firewire capabilities of this board.
The MSI K8T Master2 FAR needs an EPS 12/ATX power unit to run properly. I installed an Enermax 651AX-VH 550W EPS, which feeds up to 550 Watt into the machine, runs very stable and comes with lots of connectors and adapters.
Output from "lspci":
0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8385 [K8T800 AGP] Host Bridge (rev 01) 0000:00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI bridge [K8T800 South] 0000:00:06.0 Multimedia audio controller: Ensoniq 5880 AudioPCI (rev 02) 0000:00:07.0 SCSI storage controller: LSI Logic / Symbios Logic 53c895 (rev 01) 0000:00:0b.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5705 Gigabit Ethernet (rev 03) 0000:00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) 0000:00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) 0000:00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) 0000:00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86) 0000:00:11.0 ISA bridge: VIA Technologies, Inc. VT8237 ISA bridge [KT600/K8T800 South] 0000:00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 0000:00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 0000:00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 0000:00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 0000:00:19.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 0000:00:19.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 0000:00:19.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 0000:00:19.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 0000:01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G550 AGP (rev 01)
No P'n'P devices all around in this area.
The mainboard comes with i2c capabilities, especially
The monitored informations are readable with tools like lm_sensors or gkrellm. I wrote a little Perl script to get the information, which is mentioned in the CPU section of this document.
A really nice machine to run Linux. The computing power by the 2 processors comes very handy with threaded applications, like Firefox, The Gimp or OpenOffice and when compiling software.
This document has nothing to do with AMD, MSI, and all the other companies named in this document, they don't even know it exists. There is no guarantee that the information on this page is accurate, please don't hold me responsible if your experience is different from the information here. If you have found any glaring typos or outdated info in this page, please send an eMail to the author.
Zurück zur Main-Site |