Archive:GPU-Performance/da
Template:I18n/Language Navigation Bar
Introduktion
Adskillige populære grafikkort - især fra NVIDIA - har problemer med ydelsen under KDE 4. Disse ydelsesproblemer påvirker især Plasma - skrivebordet i KDE 4 - og KWin - KDE's vinduesmanager. Generelt set sker dette ikke fordi KDE 4 ikke er optimeret; det er et problem med grafikkortenes drivere. Nyere bærbare med Intel-chips har også alvorlige problemer i øjeblikket. Denne side omhandler nogle problemer, som kan opstå og hvordan man kommer dem til livs.
Almindelige tips
Grafikdrivere
For begge de to store grafikchip-producenter er der forskellige grafikdrivere, som kan bruges:
- For NVIDIA-kort er der den frie drive nv og den ophavsretsbeskyttede driver nvidia. Selv om KDE 4 skulle fungere fint med nv, så har den ikke 3D-acceleration, så nvidia er måske din eneste valfmulighed.
AlleDe fleste afsnit her refererer til driveren nvidia (der er også en tredje mulighed - den fri driver nouveau, som er under udvikling i øjeblikket. Jeg ved desværre ikke hvor brugbar den er endnu). På grund af licensbetingelserne installerer de fleste distributioner ikke nvidia som standard. Få information om installatiun af den fra din distribution.- Nyt: Nvidia har fornylig udsendt en ny driver i beta, som skulle tage hånd om de fleste ydelsesproblemer som der har været med KDE 4. Den kan downloades i 64bit og 32bit versioner. Du skal tilføje nogle tilvalg til xorg.conf og aktivere visse funktioner ved opstart, se detaljerne i denne meddelelse på NvNews-forummet. Bemærk: Du skal kun installere beta-drivere, hvis du ved, hvad du gør.
- Nyt 2: NVIDIA har udgivet en ny udgave 177.68 af beta-driveren, som retter et par fejl og skulle forbedre ydelsen med KDE 4's OpenGL compositing-manager. Mere information og downloads her. Den seneste beta-udgave er 177.70 og den skulle forøge ydelsen når du trækker appletter i Plasma og løse nogle problemer med ydelse og forvanskning ved tekstvisning. Mere information her.
- Nyt 3: NVIDIA's version 177.70 af beta-driveren har forbedret understøttelse af RENDER-operationer med samme kilde so destination; dette skulle forbedre ydelsen i nogle situationer, fx nå man trækker appletter i Plasma. Mere information her.
- Nyt 4: NVIDIA's version 177.80 af beta-driveren er udgivet her; nogle problemer med ydelse er blevet løst.
- Nyt 5: NVIDIA's version 180.08 af beta-driveren er udgivet her; nogle problemer med ydelse er blevet løst. Se også her for den seneste udgave af beta-driveren.
- For AMD/ATI-kort kar du også et par muligheder.Der er de frie drivere "ati" og "radeonhd" til X.org ("ati" omtales også som "radeon" uden "hd", men de fleste xorg-driverpakker, som jeg har set kalder den "ati"). De fleste distributioner synes at bruge "ati" som standard; den er kompatibel med kort fra de tidligste Radeoner og frem; "RadeonHD" er, som navnet antyder, kun til R500 og senere kort - det vil sige med produktnumre fra X1300 og opefter. Begge drivere skulle i bund og grund være brugbare til et almindeligt skrivebord, og de har den samme 3D-kode i mesa, så de skulle opføre sig ens i forhold til skrivebordeseffekter (bemærk, at understøttelse af 3D for kort nyere end R300 betragtes som ustabil og fra R600 er det helt eksperimentelt). Men hvis du har et X1300 eller senere kort og løber ind i problemer med den ene driver, så kan det ikke desto mindre være værd at prøve den anden. Du har også mulighed for at prøve den ophavsretsbeskyttede driver fglrx; den har dog begrænset understøttelse af ældre kort - læs mere om denne mulighed på AMD/ATI's hjemmeside. Nogle distributioner har denne driver i pakkearkiverne eller har den i pakkearkiver fra andre udbydere, og de er nok lettere at bruge end at downloade direkte fra AMD.
Det er sædvanligvis en god ide at holde sig up-to-date med forbedringer til driverne. Således er et første skridt til at forbedre din oplevelse med KDE 4 at checke dine drivere og opdatere dem, hvis de er forældede. Se mere i dokumentationen for din distribution om, hvordan du gør det.
Selvom det kan forbedre ydelsen yderligere, så anbefaler jeg ikke at installere beta-drivere, da det sandsynligvis vil gå ud over stabiliteten af dit system.
indstillinger af nvidia
Tilvalg, som du foretager i programmet nvidia-settings bliver ikke gemt permanent med mindre du kører det som root-bruger. Log ind som root i en terminal og start med
nvidia-settings&
Ellser skal du vælge dem hver gang du genstarter din Xserver. Dette kan gøres bekvemt ved at tilføje linjerne til at indstille funktionerne i din ~/.xinitrc
nvidia - problemet med sorte vinduer
Tilsyneladende løber ældre Nvidia-kort ind i det problem, at nyåbnede vinduer er helt sorte eller at de ikke genopfriskes ordentligt mere. Dette sker hvis composite er aktiveret og openGL bruges med mange vinduer åbne. Måske er kortet ved at have brugt al videohukommelsen? (problemet optræder også med vinduesmanageren compiz.) I KDE 4 kan du deaktivere composite/effekter med Shift + Alt + F12 for at fortsætte dit arbejde med skrivebordet normalt.
Problemet er, at tegning af vinduesdekorationerne bliver meget langsom hvis composite ikke er aktiveret (testet med KDE 4.3). Som et alternativ til at bruge 'openGL til compositing anbefales det at bruge XRender i dette tilfælde. Da bevægende effekter bliver meget langsomme med XRender, bør du sætte animationshastigheden til øjeblikkelig.
Systemindstillinger
I KDE 4 lader systemindstillinger dig også justere nogle indstillinger af kwin. Du kan finde indstillingerne i
. Om OpenGL eller XRender virker bedre afhænger af dit kort. For OpenGL kan Indstillingerne for OpenGL også have en effekt på ydelsen. Husk, at nogle af de førnævnte justeringer kan nødvendiggøre ændringer i dine indstillinger.(Bemærkning fra bruger): XRender-tilstand hjalp MEGET på en 6800 GT (agp) med ophavsretsbeskyttede drivere, specielt ved visning af videoer (177.80).
Eksempler;
- At sætte InitialPixmapPlacement til 2 kan forbedre plasmas ydelse, men kan få kwin til at hænge nogle gange.
- Sætter du OpenGL-tilstand til Delt hukommelse, så bliver Kwin måske mere responsiv igen
- (bemærkning bra bruger) At fravælge Brug VSync hjalp meget med et gforce 6800 (og også med et GeForce 8400M GT).
Hvis din Xserver a en eller anden grund hænger efter at du har klikket på knappen
i dialogen og dine indstillinger går tilbage fordi du ikke kan bekræfte dine valg i tide, så prøv igen. Som regel vil det gå hurtigere en af de følgende gange. Hvis det ikke gør, så kan du stadig ændre dine indstillinger i ~/.kde4/share/config/kwinrc.XGL
Hvis du stadig oplever dårlig ydelse efter installation af NVIDIA's beta-driver version 177.80 (særligt med 8xxx-9xxx serierne), så kan du installere xserveren XGL. Se din distributions dokumentation om, hvordan du gør det.
Fedora 10 (og senere) og xorg.conf (for nogle brugere)
Nogle af de justeringer, som er nævnt i denne artikel er rettet mod en fil, som normalt findes i /etc/X11/xorg.conf
Nogle brugere af Fedora 10 vil måske opleve, at denne fil ikke længere er til stede som standard (afhængigt af deres kort - enhver, der kender mere til dette må meget gerne uddybe), og den må så gendannes. Der er to måder at gøre dette på:
I en brugerflade
- installer og kør pakken 'system-config-display' (når du klikker på efter at have foretaget dine indstillinger, så bliver filen xorg.conf genereret).
I en terminal
- åbn en kommandolinje
- skift til runlevel 1 ved at køre følgende kommando (som root)
init 1
- kør
Xorg -configure
som root (når det bliver gjort, så genereres filen xorg.conf) eller du kan køresudo Xorg -configure :1
uden at skifte runlevel
Problemer
Dette afsnit opsummerer forskellige symptomer, som du kan støde på og prøver at forklare mulige årsager.
Ændring af vinduers størrelse foregår rykvist
- Forklaring : Dette kan skyldes, at dit kort hævder at have ARGB Visuals (gennemskinnelighed) uden at understøtte dette ordentligt. Programmer og vinduer, som berøres er Plasma-skrivebordet, KRunner-dialogen (Alt + F2 ). Plasmas dialog og terminalvinduer.
- Test : Hvis du vil vide om du har dette problem, så kør
XLIB_SKIP_ARGB_VISUALS=1 konsole
i en kommandolinje og prøv at ændre størrelsen på det nye terminalvindue (når du sætter miljøvariablen XLIB_SKIP_ARGB_VISUALS, så slås ARGB visuals fra). Hvis du nu kan ændre størrelse på vinduet uden problemer, så er dette med sikkerhed et af de problemer, som du står overfor.
Generelt
- Du kan aktivere tilvalget BackingStore i din xorg.conf:I afsnittet "Device"
... Option "BackingStore" "true" ... EndSection "Device"
Dette virker for nogle vinduer (fx Konsole) men desværre ikke for alle.
- Som en sidste udvej kan du prøve at sætte
XLIB_SKIP_ARGB_VISUALS=1
i ~/.xinitrc, men det er ikke kønt.
NVIDIA
- Du kan sætte IntialPixmapPlacement med programmet nvidia-settings:
$ nvidia-settings -a InitialPixmapPlacement=2
Dette virker for nogle (men desværre ikke for alle ) NVIDIA-kort.
NV/Intel
- Du kan aktivere EXA Acceleration
I afsnittet "Device" i xorg.conf
... Option "AccelMethod" "EXA" # valgfri; kan forbedre ydelsen, men introducere synlige artefakter # Option "MigrationHeuristic" "greedy" ... EndSection "Device"
Ydelsen vil blive noget bedre på ældre X-servere (<=1.4.2) og betydeligt bedre på de nyeste versioner (>=1.4.99.901) med dette tilvalg.
- Problemet med dårlig ydelse ved effekter kan løses ved at bruge Intel videodrivere 2.6.3.1 eller højere (i mit tilfælde på en deb-baseret distribution) med kerne 2.6.30-rc1 eller højere med UXA valgt til i xorg.conf således:
Bemærk: Hvis du bruger kerne 2.6.29, så er der mange fejl og xorg fryser tilfældigt hvis du aktiverer UXA udvidelsen.
Section "Device" Identifier "Generic Video Card" Driver "intel" Option "AccelMethod" "UXA" EndSection
Med denne konfiguration opnår jeg 350-500 FPS i Glxgears på min i945G med PentiumD820, og alle effekter kører perfekt med OpenGL.
ATI
Endnu ikke skrevet
Plasmas ydelse er ringe
- Forklaring : Desværre er det talrige mulige årsaget til at Plasma kan fungere rykvist, så det er svært at sige, hvad den konkrete årsag er.
- Test : Usually plasma performance problems can be seen best on the Folder View plasmoid. Moving it or scrolling inside the folder might be pretty slow.
General
- Please make sure this is not (only) related to the ARGB Visuals mentioned in the above section.
NVIDIA
- You can set the IntialPixmapPlacement and the GlyphCache option with the nvidia-settings utility:
$ nvidia-settings -a InitialPixmapPlacement=2 -a GlyphCache=1
This works for some (but unfortunately not all) NVIDIA cards. Some cards reportedly work better usingInitialPixmapPlacement=1
or maybe evenInitialPixmapPlacement=3
- Options that are said to work well on 8xxx cards but are untested (by me)
- Option "RenderAccel" "True"
- enabled by default
- Option "TripleBuffer" "True"
- Enables triple buffering. "Decreases the time an application stalls while waiting for vblank events, but increases latency slightly" (NVIDIA Readme)
- Option "DamageEvents" "True"
- Recommended by NVIDIA if running composite+glx, increases performance, enabled by default
- Option "UseCompositeWrapper" "True"
- Enables the X server's composite wrapper instead of the builtin one.
- Option "AllowIndirectPixmaps" "True"
- Could improve hardware rendering on G80+ cards with more than 256 MB of video memory.
- Option "BackingStore" "True"
- Cache overlayed areas in case they get redisplayed later
- Option "PixmapCacheSize" "200000"
- allocate said number of pixels for pixmap caches
- Option "OnDemandVBlankInterrupts" "True"
- only fire VBlank interrupts in modes where they are needed
- Option "RenderAccel" "True"
ATI
TODO
Folder View and other plasmoids look badly rendered
- Explanation : Folder View' and some other widgets use hardware accelerated rendering. There are two methods to do this, and Plasma requires the newer EXA method.
- Test : This is best seen on the Folder View widget, which will appear as a distorted and seemingly random region on the screen.
Open Source radeon driver
The Open Source radeon driver uses the XAA acceleration method by default. So you need to change the acceleration method from XAA (X Acceleration Architecture) to the newer EXA. As this involves editing your xorg.conf file, bear in mind that if you make an error, it may result in X not starting on your system, so first save a copy of the existing xorg.cong file.
To make the switch, edit your xorg.conf file. Locate the Device section for your graphics card. Before the "EndSection" line, add
Option "AccelMethod" "EXA"
If there is already a line with AccelMethod, change it from XAA to EXA. Save the file and restart the X server.
Note that using EXA may result in some older applications, such as some KDE3 programs being rendered incorrectly.
When using EXA it is strongly recommended to use a recent X server, at least 1.6.x or even better the new 1.7 release -- perhaps best to wait for 1.7.1.
If you have an AGP-based card then you may also want to add the following line at the same location into the configuration file.
Option "AccelDFS" "true"
This should accelerate the driver even more, but may get you a hardlock when starting X. So be cautious with this option. See this article for more information on this topic.
Some things that may speed up any card's performance
The first one refers particularly to systems running KDE prior to 4.3.1 -
- Try to avoid using many widgets on your desktop, particularly if they are of the dynamic updating type.
- Turn off transparency/translucency, choosing themes that don't use it.
- Use a theme with transparency, but change the configuration. Set the fade time to zero.
- There are two ways to do this, both in the systemsettings dialog. One, on the tab, set animation speed to .
- Two, on the tab, find translucency, configure it, and set fading duration to 0 to 10 or so. (The spinner increments are 100 ms, so the 10 ms suggestion is only a tenth of that.)
These hints won't turn an old graphics card into a fast one, but they will make Desktop Effects a feasibility on many older cards.
Desktop Effects causes random freezes
This seems to affect Intel and ATi cards. AccelMethod seems to be the culprit. The default acceleration path for most drivers right now is the outdated and slower XAA (Option "AccelMethod" "XAA") which is not recommended anymore, especially with compositing. Unfortunately, the proprietary binary blobs of ATI and NVidia still only support XAA
ATi
Try enabling EXA acceleration by adding these two lines to xorg.conf
Section "Device" Option "UseAtomBIOS" "true" Option "AccelMethod" "EXA" # ... EndSection
This works with both the radeon as well as the radeonhd driver but only with cards up to an X1950. HD2xxx and above aren't supported yet.
AtomBIOS is automatically used by the radeon driver, so that line will need to be commented out. If you have the radeonhd driver, however, you will need it. EXA is expected to become the default in the near future, but having it specified here is unlikely to cause any problems even then. 3D and EXA support for HD2xxx and above is expected later this year (2009) as they are already in an experimental branch.
Intel
It's worth checking Xorg.0.log for mention of EXA. If you don't find it (or UXA) try adding the EXA line as described in the ATi section. UXA is an experimental option, but only supported by a few drivers. It's likely that the best bits will be merged into EXA soon.
Phoronix forums is a good place to read more about this.
KRunner (Alt+F2) looks strange
NVIDIA
On NVIDIA cards krunner's dialog might appear several times below each other (with only the topmost one editable). This is related to setting InitialPixmapPlacement=1 as recommended above. There's currently no known way to remedy this problem. However, it only appears on one relatively early version of KDE 4.
Most of the icons in your SysTray have disappeared
At some point you may have been told to add KDE_SKIP_ARGB_VISUALS to either ~/.bash_profile, /etc/profile or in ~/.profile. If that rings a bell for you, hunt for it and comment it out. You may find that they magically re-appear. Otherwise, check the Qt4 libraries you are using. In my case I needed Qt 4.4.3 together with KDE 4.2.