** Opmerking voor bezitters van een Matrox videokaart ** Als je matroxfb in de kernel hebt gecompileerd, bestaat de kans dat je MTRR's reeds zijn ingesteld. Je kunt deze sectie waarschijnlijk gewoon overslaan.
Het instellen van MTRR's kan de performance in een aantal gevallen aanzienlijk verbeteren, dus het is een goed idee om het te doen. Als eerste moet je je ervan verzekeren dat je MTRR ondersteuning in je kernel hebt, door het typen van:
# ls /proc/mtrr
Als het je aangeeft dat er niet zoiets is als /proc/mtrr, moet je je kernel hercompileren met MTRR ondersteuning (te vinden onder "Processor type and features" in menuconfig).
Zodra je weet dat MTRR werkt, moet je het basisgeheugenadres van je videokaart weten, hoeveel video ram het heeft. De eenvoudigste manier om dit te doen is naar de uitvoer van X te kijken wanneer het opstart. Omdat de uitvoer gewoonlijk van het scherm scrollt en verloren gaat zodra het naar een andere tty overschakelt, moet je de uitvoer van X naar een bestand (xoutput) omleiden, zodat je het voor de benodigde waarde hierin op kunt zoeken. Dit kan door het typen van:
# startx 2> xoutput
De regel met de benodigde informatie is waarschijnlijk ergens in het midden van xoutput te vinden, en zou er ongeveer zo uit moeten zien:
(--) SVGA: PCI: NVidia Riva TNT2 rev 17, Memory @ 0xee000000, 0xe2000000
Zodra je dat hebt gevonden, schrijf je het laatste geheugenadres op, in dit geval is dat 0xe2000000. Afhankelijk van je hardware, kan het zijn dat er meerdere geheugenadressen worden getoond, dus maak je geen zorgen als je uitvoer er iets anders uitziet. Je kunt xoutput nu verwijderen.
Vervolgens moet je een nieuwe MTRR aanmaken. Om dat te kunnen doen, moet je weten hoeveel ram in hex je videokaart heeft. Hier zijn een aantal veel voorkomende waarden:
4MB -- 0x400000 8MB -- 0x800000 16MB -- 0x1000000 32MB -- 0x2000000
Typ voor het toevoegen van de MTRR:
# echo "base=0xe2000000 size=0x2000000 type=write-combining" >| /proc/mtrr
Vervang "0xe2000000" en "0x2000000" door het basisadres en de hoeveelheid videogeheugen welke specifiek is voor je systeem.
Nu zou MTRR moeten zijn ingesteld. Je kunt dit controleren door het typen van:
# cat /proc/mtrr
De uitvoer die je krijgt zou er ongeveer zo uit moeten zien:
reg00: base=0x00000000 ( 0MB), size= 128MB: write-back, count=1 reg01: base=0xe2000000 (3616MB), size= 32MB: write-combining, count=1
Nogmaals, het aantal regels zal waarschijnlijk anders zijn dan die hier getoond.