Archive:GPU-Performance/da

From KDE UserBase Wiki


Advarsel

Før du foretager nogen ændringer af dit system, så læs det hele omhyggeligt og prøv at forstå, hvad du gør. Hvis du ændrer en fil, så behold en kopi af den oprindelige version og vær sikker på, at du kan få den gamle udgave tilbage igen - selv hvis din Xserver ikke længere starter.


Advarsel

Nogle af de nedenfor omtalte ændringer siges at hæve temperaturen af din GPU. Under alle omstændigheder bør du overvåge dit grafikkort for at sikre dig, at det ikke bliver for varmt!


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. Alle De 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 Skrivebord -> Skrivebordseffekter -> Avanceret. 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 Anvend 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.

Note

XGL har *mange* problemer med 3d-programmer, xvideo og tastaturlayout, men med nogle videokort er det nu den eneste måde at nyde KDE 4 i fuld hastighed. XGL 'omgår' faktisk nvidias driver og bruger biblioteket mesa til at vise skrivebordet. OpenGL-baserede skrivebordseffekter kan ikke køre på XGL.


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å OK efter at have foretaget dine indstillinger, så bliver filen xorg.conf genereret).

I en terminal

  1. åbn en kommandolinje
  2. skift til runlevel 1 ved at køre følgende kommando (som root)
    init 1
  3. kør
    Xorg -configure
    som root (når det bliver gjort, så genereres filen xorg.conf) eller du kan køre
    sudo 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 Tilføj widgets... 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.

Note

Jeg har oplevet, at dette også fikser forsinkelsen af forhåndsvisninger i Dolphin. Bekræft venligst. --dpalacio 17:33, 27 July 2008 (CEST)


Dit grafikkort har problemer med Flash-videoer

Hvis du har et ældre grafikkort, så kan hardware-acceleration være et problem for det. Dette kan være særligt mærkbart, når du ser flash-videoer fx på Youtube. Dette kan måske hjælpe:

  • Når du ser en Flash-video, så højreklik på video-skærmen.
  • En menu dukker op med indstillingsmuligheder.
  • Hvis du vælger 'Global settings' (nederst på listen) så dukker en dialog med 'globale indstillnger' op.
  • Her kan du slå hardware acceleration fra for Flash.

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 xorg.conf
Section "Device"
    ...
    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 : Sædvanligvis kan problemer med Plasmas ydelse bedst ses med plasmiodet Mappevisning. Det kan gå temmelig langsomt med at flytte det eller rulle igennem indholdet af en mappe.

Generelt

  • Du bør sikre dig, at dette ikke (kun) er relateret til ARGB Visuals nævnt ovenfor.

NVIDIA

  • Du kan sætte tilvalgene IntialPixmapPlacement og GlyphCache med programmet nvidia-settings:
    $ nvidia-settings -a InitialPixmapPlacement=2 -a GlyphCache=1
    Dette virker for nogle (men desværre ikke for alle) NVIDIA-kort. Nogle kort virker angiveligt bedre med
    InitialPixmapPlacement=1
    eller endda
    InitialPixmapPlacement=3
    .
  • Tilvalg, som siges at virke godt med 8xxx-kort (men som jeg ikke har testet)
    • Tilvalg "RenderAccel" "True"
      • aktiver som standard
    • Tilvalg "TripleBuffer" "True"
      • Aktiverer trippelbuffering. "Formindsker den tid, som et program forsinkes mens det venter på vblank-begivenheder, men forøger latens en smult" (NVIDIA Readme)
    • Tilvalg "DamageEvents" "True"
      • Anbefalet af NVIDIA hvis man kører composite+glx, forbedrer ydelsen, aktiveret som standard
    • Tilvalg "UseCompositeWrapper" "True"
      • Aktiverer X-serveren composite-wrapper i stedet for den indbyggede.
    • Tilvalg"AllowIndirectPixmaps" "True"
      • Kunne forbedre hardware-rendering på G80+ kort me dmere end 256 MB videohukommelse.
    • Tilvalg "BackingStore" "True"
      • Gem dækkede arealer i tilfælde af, at de skulle blive vist igen senere
    • Tilvalg "PixmapCacheSize" "200000"
      • tildel det nævnte antal pixels til en pixmap cache
    • Tilvalg "OnDemandVBlankInterrupts" "True"
      • afsend kun VBlank interrupts når de behøves

ATI

Endnu ikke skrevet

Mappevisning og andre plasmoider ser ikke godt ud

  • Forklaring : Mappevisning og nogle andre widgets bruger hardware-accelereret visninig. Der er to måder at gøre dette på, og Plasme kræver den nyere EXA-metode.
  • Test : Dette ses bedst i Mappevisningswidget'et, som vil fræmtræde som et forvrænget og tilsyneladende tilfældigt område af skærmen.

Open source radeon drivere

Open source driverne til radeon bruger som standard XAA-metoden til acceleration, så du skal ændre accelerationstilstanden fra XAA (X Acceleration Architecture) til den nyere EXA. Da dette involverer, at du redigerer din xorg.conf-fil, så husk, at hvis du laver en fejl, så kan det resultere i at X ikke starter op på dit system. Gem derfor først en kopi af den eksisterende xorg.conf.

For at foretage ændringen skal du redigere din fil xorg.conf. Find afsnittet Device for dit grafikkort. Før linjen "EndSection" tilføjer du

Option "AccelMethod" "EXA"


Hvis der allerede er en linje med AccelMethod, så ændrer du den fra XAA til EXA. Gem filen og genstart X-serveren.

Bemærk, at hvis du bruger EXA, så kan det betyde, at nogle KDE3-programmer ikke vises korrekt.

Når du bruger EXA, så anbefales det stærkt at du bruger er nyere X-server, mindst 1.6.x eller endnu bedre, den nye version 1.7 -- måske er det bedst at vente på 1.7.1.

Hvis du har et AGP-baseret kort, så er det måske også en god ide at tilføje følgende linje på samme sted i konfigurationsfilen.

Option "AccelDFS"    "true"

Dette skulle accelerere driveren endnu mere, men kan resultere i en hardlock, når du starter X; så vær forsigtig. Se denne artikel for mere information om emnet.

Nogle ting, som kan forøge ethvert korts ydelse

Det første punkt refererer i særdeleshed til systemer, som kører KDE versioner før 4.3.1 -

  • Prøv at undgå at bruge mange widgets på dit skrivebord, især hvis de er opdateres dynamisk.
  • Slå gennemsigtighed/gennemskinnelighed fra, vælg et tema, som ikke bruger dette.
  • Brug et tema med gennemsigtighed, men ændr indstillingerne. Sæt fade-tiden til nul.
    • Der er to måder at gøre dette, begge i dialogen Systemindstillinger -> Skrivebord -> Skrivebordseffekter. Dels kan du sætte Animationshastighed til Øjeblikkelig,
    • dels kan du i fanebladet Alle effekter finde Gennemsigtighed og konfigurere den ved at sætte Fade varighed til mellem 0 og 10. (Spinnerboksen vokser i spring af 100 ms, så de 10 ms er kun en tiendedel af det.)

Disse tips vil ikke gøre et gammelt grafikkort hurtigt, men de vil gøre skrivebordseffekter mulige på mange ældre kort.

Skrivebordseffekter forårsager tilfældige fastfrysninger

Dette synes at påvirke Intel og ATi kort. AccelMethod synes at være årsagen. Standardmetoden for acceleration for de fleste drivere lige nu er den forældede og langsommere XAA (Tilvalg "AccelMethod" "XAA"), som ikke anbefales mere, især ikke med compositing. Desværre understøtter de ophavsbeskyttede binære "blobs" fra ATi og NVidia stadig kun XAA.

ATi

Prøv at aktivere EXA-acceleration ved at tilføje disse linjer til xork.conf

Section "Device"
   Option      "UseAtomBIOS" "true"
   Option      "AccelMethod" "EXA"
   # ...
EndSection

Dette virker med begge drivere, radeon og radeonhd , men kun med kort op til X1950. HD2xxx og derover understøttes endnu ikke.

AtomBIOS bruges automatisk af driveren radeon, så den linje skal kommenteres ud. Hvis du har driveren radeonhd, skal du dog bruge den. EXA forventes at blive standard i den nærmeste fremtid, men den er usandsynligt, at det vil skabe problemer i fremtiden at specificere den her. Understøttelse af 3D og EXA for HD2xxx og derover forventes senere i år (2009), da de allerede findes i den eksperimentelle gren.

Intel

Det er værd at checke Xorg.0.log, for at se om EXA nævnes. Hcis du ikke finder den (eller UXA), så prøv at tilføje EXA-linjen som beskrevet i afsnittet om ATi. UXA er et eksperimentelt tilvalg, men understøttes kun af få drivere. Det er sandsynligt, at de bedste dele vil blive overført til EXA snart.

Phoronix' forummer er et godt sted at læse mere om dette.

KRunner (Alt + F2) ser mærkelig ud

NVIDIA

Problemer med visning af KRunner
Problemer med visning af KRunner

På NVIDIA-kort vises KRunners dialog måske flere gange under hinanden (men der kan kun skrives i den øverste). Dette er relateret til indstillingen InitialPixmapPlacement=1 som anbefalet ovenfor. Der kendes i øjeblikket ikke nogen måde at løse dette problem på. Det optræder dog kun i relativt tidlige versioner af KDE 4.

De fleste af ikonerne i statusområdet er forsvundet

På et tidspunkt er du måske blevet bedt om at tilføje KDE_SKIP_ARGB_VISUALS til enten ~/.bash_profile, /etc/profile ellet ~/.profile. Hvis det virker bekendt, så find den og kommentér den ud. Du vil måske opleve, at de på mystisk vis dukker op igen. Hvis ikke, så check, hvilke Qt4-biblioteker du bruger. I mit tilfælde skulle jeg bruge Qt 4.4.3 sammen med KDE 4.2.


Links/Referencer

-- Justering af ydelsen af 177.67 Nvidia beta driver
-- Diskussioner af grafikproblemer på NVIDIAs forummer.
Bemærkninger om eksterne lydkort