Linux & DMA

Pagina: 1
Acties:

  • eborn
  • Registratie: April 2000
  • Laatst online: 17-08 22:50
Is er onder Linux ook een optie DMA zoals in Windows? Of zet de kernel dit altijd al standaard aan zodra hij een DMA IDE station ziet?

Verwijderd

ik ode dit altijd:

/sbin/hdparm -d 1 /dev/hda

wordt je hardeschrijf sneller van omdat hij dan in DMA wordt gezet.

  • eborn
  • Registratie: April 2000
  • Laatst online: 17-08 22:50
ik heb dat tooltje niet. Tot welk package hoort die? (.deb/.rpm/.tgz)

Verwijderd

ik draai in ieder geval redhat, je zou daar eens kunnen proberen. er zit ook een handige snelheids test bij, draaien voor en na het zetten van die command!

Verwijderd

dit moet je dan doen:

hdparm -Tt /dev/hda

Verwijderd

Volledige uitleg:

Tip 1: Maak je harde schijf sneller

Je kunt je harde schijf vrij simpel veel sneller maken, gebruik daarvoor hdparm en onderstaande procedure. Test eerst de basissnelheid (vul voor /dev/hda de aanduiding in van je eigen harde schijf). Tik in vanuit de prompt:

hdparm -Tt /dev/hda

Als resultaat krijg je nu de ongetweakte snelheid in megabytes per seconde. Zet nu 32 Bits I/O adressering aan met:

hdparm -u 1 /dev/hda

En test de schijf weer, zie je de prestatieverbetering? Zet ook DMA aan met:

hdparm -d 1 /dev/hda

Ok, nog eentje. De transfersnelheid opkrikken. LET OP! gebruik deze optie alleen als je harde schijf jonger is dan twee jaar! Ultra ATA 33-schijven hebben de waarde 3 nodig, de meeste 66-schijven mét een tachtigaderige flatcable worden het snelst van -c 4. Dus voor een Ultra ATA 33-schijf tik je:

hdparm -c 3 /dev/hda

En test weer. Alls alles goed verloopt kun je een complete command als
hdparm -u 1 -d 1 -c 3 /dev/hda in het bestand /etc/rc.d/rc.local zetten (klik voor een voorbeeld) zodat je systeem bij iedere start wordt getweaked!

  • eborn
  • Registratie: April 2000
  • Laatst online: 17-08 22:50
een apt-get install hdparm doet wonderen :-) gaan we 's ff uittesten

Even getest trouwens:

/dev/hdc:
Timing buffer-cache reads: 128 MB in 1.81 seconds = 70.72 MB/sec
Timing buffered disk reads: 64 MB in 6.23 seconds = 10.27 MB/sec

En na die -u 1:

/dev/hdc:
Timing buffer-cache reads: 128 MB in 2.25 seconds = 56.89 MB/sec
Timing buffered disk reads: 64 MB in 5.97 seconds = 10.72 MB/sec

Is dus juist langzamer geworden :-)

UPDATE: Alle andere instellingen maken de disk ook langzamer :'(

Verwijderd

Wat voor schrijven heb je?


En wat voor distributie?

  • eborn
  • Registratie: April 2000
  • Laatst online: 17-08 22:50
Ik draai Debian 3.0 (was 2.2r4)

Ik heb 2 DMA schijven en 1 UDMA(33) schijf in de server hangen. Verder zit er nog een DMA cd-rom in.

Verwijderd

moet je ff bij hdaparm --help kijken

Verwijderd

In de kernelconfig zit een optie als "Use DMA by default" oid. Als je die aanzet/aanstaat stuurt Linux je schijven indien mogelijk met DMA aan. hdparm staat http://www.ibiblio.org/pub/Linux/system/hardware/ <-- daar dus.

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 16-08 16:08

deadinspace

The what goes where now?

Welke kernel draai je, en aan wat voor controller hangen die schijven?

En met 'hdparm /dev/blaat' (dus zonder opties) kun je zien welke flags aanstaan (post de output daarvan anders eens).

  • eborn
  • Registratie: April 2000
  • Laatst online: 17-08 22:50
Kernel 2.4.17, controler is een UDMA 33Mb/s.

Output hdparm /dev/hdc:

/dev/hdc:
multcount = 16 (on)
I/O support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 1 (on)
keepsettings = 0 (off)
nowerr = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 785/128/63, sectors = 6335280, start = 0
busstate = 1 (on)

UPDATE: Die bovengenoemde optie in de kernel stond trouwens al aan.

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 16-08 16:08

deadinspace

The what goes where now?

Je kunt i/o support nog op 32bit w/sync zetten met -c3.
Je kunt ook 32bit zonder sync proberen (-c1)... die was meen ik ietsje sneller maar ook iets minder aan te raden (staat ergens in de manpage).

En mja, -u1 (unmaskirq)... Meestal wordt het daar ietsje trager van, maar verbetert het de responsiveness.

En tsja, als je met die 2 klaar bent zit je toch wel zo'n beetje tegen het maximum van je HD en controller aan.

  • dinges
  • Registratie: September 2000
  • Niet online
He bedankt mensen!
ik zat me al een hele tijd af te vragen waarom mijn schijf zo langzaam was :P
DMA stond dus niet aan ;)

[edit]
van gemiddeld 3.6 MB/s naar gemiddeld 11.1 MB/s :P (over het netwerk)

PSN: Houtvlot


Verwijderd

Als multicount 8 inplaats van 16 gebruikt wordt het nog een stukje sneller (was bij mij althans).

  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Op zondag 30 december 2001 12:21 schreef worldpunch het volgende:
Alls alles goed verloopt kun je een complete command als
hdparm -u 1 -d 1 -c 3 /dev/hda in het bestand /etc/rc.d/rc.local zetten (klik voor een voorbeeld) zodat je systeem bij iedere start wordt getweaked!
Er is toch ook een -K optie dat-ie je settings onthoudt?
Of werkt dat niet over een reboot?

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • Sjonny
  • Registratie: Maart 2001
  • Laatst online: 13:39

Sjonny

Fratser

Op zondag 30 december 2001 12:24 schreef eborn het volgende:
een apt-get install hdparm doet wonderen :-) gaan we 's ff uittesten

Even getest trouwens:

/dev/hdc:
Timing buffer-cache reads: 128 MB in 1.81 seconds = 70.72 MB/sec
Timing buffered disk reads: 64 MB in 6.23 seconds = 10.27 MB/sec

En na die -u 1:

/dev/hdc:
Timing buffer-cache reads: 128 MB in 2.25 seconds = 56.89 MB/sec
Timing buffered disk reads: 64 MB in 5.97 seconds = 10.72 MB/sec

Is dus juist langzamer geworden :-)

UPDATE: Alle andere instellingen maken de disk ook langzamer :'(
10 Mb/s voor een udma(33) hdd is volgens mij wel normaal/max .. en je moet die test altijd zo'n 3x uitvoeren en het gemiddelde nemen. verschil tussen 10.72 en 10.27 mb/s is dus nix! da's altijd zo..

The problem is in the part of your brain that handles intelligence.


  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 16-08 16:08

deadinspace

The what goes where now?

Op zondag 30 december 2001 18:32 schreef BackSlash32 het volgende:

[..]

Er is toch ook een -K optie dat-ie je settings onthoudt?
Of werkt dat niet over een reboot?
Dat werkt (in mijn ervaring althans) dus niet over een reboot.

Als je hebt gevonden wat de goed settings zijn voor je HD, kun je het beste in /etc/init.d/bootmisc.sh (SYSV boot model, Slackware users moeten het maar even aan iemand anders vragen) ergens onderaan 'hdparm -jeopties /dev/jeschijf' erbij zetten, dan gebeurt dit iedere keer dat je computer start.
Pagina: 1