PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ALI Chipsatz / DMA / Netzwerk :)



hennesiv
03.10.07, 21:43
Hallo zusammen,

habe ein paar Probleme mit meinem Server, und zwar bin ich mir nicht sicher, ob ich den richtigen Treiber für meinen Chipsatz in den Kernel eingebunden habe. Seit er drin ist, ist der Datendurchsatz laut hdparm zwar sehr gestiegen aber mich plagen trotzdem ein paar Probleme. Folgend erst einmal eine Übersicht über das was ich so angesammelt habe:

PC :




uname -sr
Linux 2.6.22.6

lspci
00:00.0 Host bridge: ALi Corporation M1647 Northbridge [MAGiK 1 / MobileMAGiK 1] (rev 04)
00:01.0 PCI bridge: ALi Corporation PCI to AGP Controller
00:04.0 IDE interface: ALi Corporation M5229 IDE (rev c4)
00:06.0 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
00:07.0 ISA bridge: ALi Corporation M1533/M1535 PCI to ISA Bridge [Aladdin IV/V/V+]
00:0b.0 Ethernet controller: 3Com Corporation 3c905B 100BaseTX [Cyclone] (rev 30)
00:11.0 Bridge: ALi Corporation M7101 Power Management Controller [PMU]
00:14.0 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
01:00.0 VGA compatible controller: nVidia Corporation NV5M64 [RIVA TNT2 Model 64/Model 64 Pro] (rev 15)


1) Um welchen Chipsatz handelt es sich jetzt genau? Sind ja mehrere Bezeichnungen vorhanden (ALi ist klar ;))

Hab im moment bezüglich ALi folgendes fest in den Kernel eingebunden:

Device Drivers -> ATA/ATAPI/MFM/RLL support -> <*> ALI M15x3 chipset support

ansonsten finde ich da auch nichts anderes zu ALi




ethtool eth0
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 24
Transceiver: internal
Auto-negotiation: on
Current message level: 0x00000001 (1)
Link detected: yes


Mit dem Netzwerk sollte alles in Ordnung sein, Treiber ist fest im Kernel drin und Karte läuft mit 100Mbit/s FD


Zu den Festplatten (1x 20Gig(hda1) + 1x 250Gig Loop-AES Crypted(hdb1)



hdparm -d /dev/hda1

/dev/hda1:
using_dma = 1 (on)


hdparm -d /dev/hdb1

/dev/hdb1:
using_dma = 1 (on)

hdparm -t /dev/hda1

/dev/hda1:
Timing buffered disk reads: 112 MB in 3.03 seconds = 37.00 MB/sec

hdparm -T /dev/hda1

/dev/hda1:
Timing buffer-cache reads: 596 MB in 2.00 seconds = 297.85 MB/sec

hdparm -t /dev/hdb1

/dev/hdb1:
Timing buffered disk reads: 198 MB in 3.01 seconds = 65.74 MB/sec

hdparm -T /dev/hdb1

/dev/hdb1:
Timing buffer-cache reads: 592 MB in 2.01 seconds = 295.18 MB/sec

hdparm -i /dev/hda

/dev/hda:

Model=Maxtor 2B020H1, FwRev=WAH21PB0, SerialNo=B1857GQE
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57
BuffType=DualPortCache, BuffSize=2048kB, MaxMultSect=16, MultSect=off
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=40020624
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=yes: disabled (255) WriteCache=enabled
Drive conforms to: ATA/ATAPI-6 T13 1410D revision 0:

* signifies the current active mode

hdparm -i /dev/hdb

/dev/hdb:

Model=SAMSUNG SP2514N, FwRev=VF100-41, SerialNo=S08BJ10L530733
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=34902, SectSize=554, ECCbytes=4
BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=off
CurCHS=4317/15/255, CurSects=16512525, LBA=yes, LBAsects=268435455
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=no WriteCache=enabled
Drive conforms to: unknown:

* signifies the current active mode


Sieht für mich auch in Ordnung aus. Was mich etwas stutzig bzgl. dem Chipsatz Treiber macht ist:



dmesg | grep ALI
ALI15X3: IDE controller at PCI slot 0000:00:04.0
ALI15X3: chipset revision 196
ALI15X3: not 100% native mode: will probe irqs later

2) Hab ich jetzt den richtigen Treiber oder nicht?

3) Mein Netzwerk ist arg komisch Unterwegs, habe den Server per CrossOverKabel an mehrere Computer angeschlossen und habe krasse Schwankungen.

Dir1 (20x15MB files) -> jedes File ~1MB/sec
Dir2 (20x15MB files) -> jedes File ~7Mb/sec

Das komische ist egal wann und wie oft ich versuche Dir1 herunter zu laden es sind immer nur ~1Mb/sec genauso wie mit Dir2 ~7Mb/sec hab das ganze natürlich mit den verschiedensten files versucht. Daten kamen alle von der verschlüsselten Festplatte.

Hoffe es kann geholfen werden... :)

Vielen Dank im Voraus

MfG hennesiv

hennesiv
01.11.09, 19:33
Noch mal push (ja ich weiss, ist alt). Habe das Problem immer noch nicht im Griff. Das einzige, was sich geänder hat ist, dass ich jetzt ext3 anstatt xfs benutze. Der Durchsatz ist aber eher noch langsamer so bei ca. 2mb/sec. pdflush macht nen riesen Rabatz (60% Auslastung). Der Transfer beginnt mit 8-9 Mb/sec und geht dann nach paar sekunden immer direkt runter.

Hier mal ein paar Ausgaben:



bash-4.0# cat /proc/meminfo
MemTotal: 255684 kB
MemFree: 4592 kB
Buffers: 4488 kB
Cached: 230680 kB
SwapCached: 120 kB
Active: 107400 kB
Inactive: 131668 kB
Active(anon): 2768 kB
Inactive(anon): 3300 kB
Active(file): 104632 kB
Inactive(file): 128368 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 977248 kB
SwapFree: 977128 kB
Dirty: 21136 kB
Writeback: 0 kB
AnonPages: 3788 kB
Mapped: 1988 kB
Slab: 9452 kB
SReclaimable: 5964 kB
SUnreclaim: 3488 kB
PageTables: 376 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 1105088 kB
Committed_AS: 13548 kB
VmallocTotal: 778128 kB
VmallocUsed: 560 kB
VmallocChunk: 777552 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 4096 kB
DirectMap4k: 12288 kB
DirectMap4M: 249856 kB




top - 22:33:19 up 6:10, 1 user, load average: 2.07, 1.82, 1.64
Tasks: 44 total, 3 running, 41 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 33.1%sy, 5.2%ni, 5.2%id, 0.0%wa, 54.3%hi, 2.1%si, 0.0%st
Mem: 255684k total, 251804k used, 3880k free, 4676k buffers
Swap: 977248k total, 116k used, 977132k free, 230960k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
146 root 20 0 0 0 0 R 64.7 0.0 18:10.65 pdflush
661 100 39 19 4736 1112 644 R 14.9 0.4 34:15.91 glftpd
87 root 15 -5 0 0 0 S 14.1 0.0 36:32.52 kblockd/0
1133 root 30 10 2380 1000 816 R 1.4 0.4 0:00.06 top
1 root 20 0 1864 128 64 S 0.3 0.1 0:06.29 init
148 root 15 -5 0 0 0 S 0.3 0.0 0:43.87 kswapd0


dma ist an, full duplex ist an...

Wie werden die Daten überhaupt geschrieben? Zu erst in den Ram und dann auf die Platte?!

Kann an der Stelle wirklich keiner weiterhelfen? Es ist echt extrem langsam...

VG hennesiv

simpleminds
02.11.09, 05:39
Wenn ich mich recht erinnere, war es früher so, dass das ALI Modul gar nicht erst geladen wurde, sondern ein anderer generic. Du müsstest mal in der Modulbeschreibung schauen, da müstte was von dma u.ä. stehen, dass genau dieser Treiber nicht genommen werden sollte. Wenn es der Treiber ist, den ich meine, dann hast Du Pech, denn ich bin nie über 7MB/s damit gekommen, obwohl UDMA-66 drin gewesen wäre.

hennesiv
02.11.09, 20:25
CONFIG_PATA_ALI: │
│ │
│ This option enables support for the ALi ATA interfaces │
│ found on the many ALi chipsets. │
│ │
│ If unsure, say N.





CONFIG_BLK_DEV_ALI15X3: │
│ │
│ This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C │
│ onboard chipsets. It also tests for Simplex mode and enables │
│ normal dual channel support. │
│ │
│ Please read the comments at the top of │
│ <file:drivers/ide/pci/alim15x3.c>. │
│ │
│ If unsure, say N.


Das ist das, was ich fest in den kernel kompiliert habe... Aber glaube nicht, dass es daran hängt hdparm gibt ja ordentliche Werte