Dienstag, Juli 6 2010

Lucid, der ATI Treiber, KMS und Performance

Bisher gab es nie Probleme mit der Installation eines proprietären Grafiktreibers für meine Onboard ATI Radeon HD3300, was sich aber in Ubuntu Lucid Lynx geändert hat. Nach dem Update von Karmic auf Lucid und dem Herunterladen des Treibers über das Applet Hardware Treiber erhielt ich einen bunten Brei an Farben und Linien, welcher sich auch noch bei jeder Mausbewegung änderte und bewegte. Verschob man ein Fenster, konnte man Glück haben, dass man eventuell Menüs oder Schriften wieder korrekt angezeigt bekam. Da dies aber in keinster Weise akzeptabel war, verschwand der verbuggte Treiber schnell wieder von meinem System und ich versuchte mein Glück diesmal mit dem Exemplar von der ATI Seite: Doch auch hier das gleiche Bild (im wahrsten Sinne des Wortes). Also, alle proprietären Treiber wieder entfernt und wieder den standard Open Source "radeon" aktiviert. Bisher lief damit eigentlich alles einwandfrei, bis, ja bis auf eine Kleinigkeit die eigentlich nich so besonders auffällig war aber doch ein wenig störte. Das System war träge, nicht wirklich langsam, aber träge. Mal ein ruckeliges Scrollen auf Websites während die CPU Last nach oben schoss, mal kurze Programmaussetzer, nichts gravierendes aber trotzdem nervig. Also entschloss ich mich dem Problem auf den Grund zu gehen, was allerdings gar nicht so einfach war, denn was löste diesen Bug aus? Nach einiger Suche fand ich dann den Übeltäter: KMS (kernel-mode-settings), die neue Kernel-Videoarchitektur die eigentlich Probleme be- und die Performans anheben sollte. Laut Known Issues for Lucid Lynx eine bekanntes Problem was allerdings nur sehr selten auftreten soll - anscheinend gehöre ich auch zu diesen sehr seltenen Fällen. Die Lösung ist einfach und schnell gemacht: Um KMS zu deaktiviern muss die Datei /etc/default/grub editiert werden. An der Stelle GRUB_CMDLINE_LINUX muss die Option nomodeset hinzugefügt werden. Anschliessend muss noch ein sudo update-grub ausgeführt werden um die Änderung zu übernehmen. Nach einem Reboot ist das Problem behoben.

Montag, Januar 26 2009

24p Wiedergabe mit dem PC

Da dies anscheinend mehrere Leute interessiert, möchte ich kurz ein paar Worte über die 24p-Wiedergabe von bzw.  mit einem PC verlieren. Erste Vorraussetzung um 24p am TV wiederzugeben muss der Fernseher und die Grafikkarte diese Bildwiederholfrequenz natürlich unterstützen (24p bedeutet Bildwiederholfrequenz von 24Hz bei einer Auflösung von 1920x1080 Pixeln). Bei Mainboards bzw. Garfikkarten mit einem HDMI Ausgang, sollte dies eigentlich möglich sein. Um die Wiedergabe vernünftig hinzubekommen, sollte ersteinmal ausschließlich der Fernseher per HDMI mit dem PC verbunden werden und nicht noch zusätzlich ein Monitor um dieses Fehlerquelle von Anfang an auszuschließen. Starten wir jetzt den Rechner, sollte dort schonmal ein Bild erscheinen, sprich der Bootschirm von Linux oder Windows. Da der Fernseher nun die einzige Anzeige im System ist, sollte das Bild auch nach dem Booten noch sichtbar bleiben. Wichtig ist auf jeden Fall, dass ein Grafiktreiber der neueren Generation installiert ist, denn im Treibermenü aufloesung (Catalyst Control Center oder Nvidia Treibermenü)  müssen wir die Bildschirmauflösung erstmal auf das Maximum hochdrehen und zwar 1920x1080. Ist diese Auflösung nicht verfügbar, ist entweder der Fernseher oder die Grafikkarte nicht in der Lage diese darzustellen. Da 24p ja einer Bildwiederholfrequenz von 24Hz entspricht, muss diese natürlich auch noch eingestellt werden. Standartmäßig wird der angeschlossene Bildschirm/Fernseher automatisch mit der maximalen Bildwiederholfrequenz betrieben, meist 60Hz um flüssigere Bewegungen ordentlich darstellen zu können und eventuelles Flackern zu unterbinden. Da wir in unserem Fall allerdings genau diese 24Hz haben möchten, stellen wir dies manuell ein. Mein Fernseher zeigte nach Übernahme der Einstellung sofort 1080/24p im Display, also genau das Richtige. Zusätzlich musste ich unter Ubuntu noch die Audioausgabe über HDMI aktivieren um auch Sound über das HDMI Kabel zum Fernseher zu senden. Diese Einstellung findet man bei Ubuntu im Soundmixer. Man wählt als Gerät den HDMI Ausgang und aktiviert den Schalter IEC958 (mein Gerät heisst "HDA ATI HDMI"). Eventuell muss man im jeweilgen Player noch das Ausgabegerät ändern, bei mir im VLC unter Optionen --> Audio --> Ausgabegerät auf ALSA ATI HDMI. So funktioniert die Wiedergabe von 24p Material inklusive Ton auf dem Fernseher. Nach dem Schauen sollte man nicht vergessen, den HDMI Ausgang wieder zu deaktivieren, denn sonst hat man über den normalen analogen Ausgang keinen Ton mehr ;).

Mittwoch, Januar 21 2009

Speicherverwaltung und IOMMU Kernel 2.6.27-9

Aperture pointing to e820 RAM. Ignoring Your BIOS doesn't leave an aperture memory hole Please enable IOMMU option in BIOS setup This cost you 64MB of RAM So sieht meine Fehlermeldung aus, die mir der Ubuntu 8.10 Kernel liefert. Komischerweise stellt der Kernel mir 3,6GB Ram zur Verfügung, eindeutig zu wenig bei vorhandenen 4GB. Eine IOMMU Option existiert im meinem Bios leider nicht und auch sonst gibt es keine Möglichkeit etwas in diese Richtung zu unternehmen. Boote ich wie im mehreren Foren empfohlen mit der Kerneloption iommu=noaperture entfällt zwar die Fehlermeldung, aber dafür gibts auch nur noch 3,4 GB Ram. Die andere empfohlene Alternativoption iommu=memaper scheint überhaupt keine Wirkung zu haben. Komisch ist auch die Ausgabe von hwinfo --mem, was mir unter anderem "Memory Size: 3GB + 512MB" liefert. Allerdings könnte das daran liegen, dass das BIOS automatisch 512MB für die interne Grafik abzwackt? Ich werde mal testen, wie sich diese Ausgabe ändert, wenn ich den internen Speicher händisch im BIOS festlege. Dies wird vermutlich das Problem auch nicht lösen, aber immerhin wird dann einiges klarer wo der fehlende Speicher abgeblieben ist.  Laut Catalyst Control Center besitzt die Karte nämlich 512MB DDR2 Ram, wie ich gerade lese. Da die Karte aber nur Shared Memory besitzt scheint dies der Fehlende Speicher zu sein? Ich berichte später... Interessante Links zum Thema http://rubbad.wordpress.com/2008/11/28/ubuntu-810-iommu/ http://www.overclock.net/linux-unix/441413-installation-problem-new-computer.html http://ubuntuforums.org/showthread.php?t=1018854&page=3 Nachtrag: Anscheinend war tatsächlich die Shared Memory Option der internen Grafikkarte für den mysteriösen Speicherklau verantwortlich! Und wie ich in einem Forum las, schein oben genannter Fehler kein Fehler sondern eine simpele Warnung zu sein.

Montag, Januar 19 2009

Neuer Rechner

Wie viele vielleicht bemerkt haben, gabs lange schon keinen neuen Artikel mehr! Das lag daran, dass mein neuer PC endlich gekommen ist und mir dort einfach das Kennwort für dsc00101Wordpress fehlt ;). Wie viele ja gelesen haben fehlt mir immernoch die SSD, weswegen ich noch nicht mit Sack und Pack auf den neuen Rechner umziehen konnte. Mittlerweile habe ich die Bestellung bei Mindfactory storniert und bei Snogard bestellt.  Dort ist die Platte zwar zur Zeit nicht lieferbar, aber hier ist man wenigstens so ehrlich dies zu sagen, denn meiner Meinung nach ist im Moment überhaupt kein Shop in der Lage die Platte zu liefern. Um nun auch mal auf den neuen Rechner zu sprechen zu kommen, es ist der AMD Phenom 9550 mit 4x 2,2 Ghz geworden, welcher auf einem MSI KA790GX Mainboard residiert. Äusserst beeindruckend, endlich kann ich FullHD Videos gucken! :) Extrem beeindruckt hat mich der Prozessor beim Encodieren von MP3-Dateien die er laut SoundKonverter mit 250x-er Geschwindigkeit encodiert (mein P4 schaffte hier ungefähr 7x :D ).dsc00100 Auch die Onboard ATI Radeon HD3300 arbeitet Prima unter Ubuntu und bringt trotz Shared Memory noch eine tolle Leistung bei z.B. Nexuiz (im Durchschnitt 50-60 FPS). Leider gibts noch ein Problem mit IOMMU bzw. dem RAM weshalb, auch unter Ubuntu 64bit, nur 3,6GB der eingebauten 4GB erkannt werden. Laut hwinfo --memory 3GB + 512MB, komisch! Das kann allerdings auch nur eine Einstellungssache sein, die man sicherlich irgendwie wegbekommt. Wirklich positiv überrascht bin ich von der Qualität des be quiet! Netzteils. Da ich vorher immer nur Standartnetzteile verbaut habe, besitze ich kaum Vergleichsmöglichkeit, aber die Lautstärke ist quasi gleich Null und die Verarbeitung Spitzenklasse. Nun heissts nur noch warten bis die SSD (OCZ 30GB Vertex Series) ankommt und ich kann meine alte Möhre vom Dienst suspendieren.

Mittwoch, Januar 7 2009

Die Qual der Wahl...

Um der Wirtschaftskrise entgegenzuarbeiten und die Wirtschaft wieder anzukurbeln habe ich mich entschlossen in naher Zukunft einen neuen PC zu kaufen. Mein guter alter Pentium 4 lässt sich, besonders beim Arbeiten mit virtuellen Maschinen, nur noch als Heizungsersatz nutzen, insbesondere auch wegen des Stromverbrauchs ;) Zwei Systeme habe ich zusammengebaut (bauen lassen), ich tendiere allerdings schon aufgrund des günstigeren Preises zu Alternative 1: Alternative 1:
  • OCZ DIMM 4 GB DDR2-1066 Kit
  • AMD Phenom X4 9550 4x 2200 MHz, 4x 512 kByte, 3600 MT/s, Agena
  • be quiet! Straight Power BQT E6-400W 4 Stecker
  • Asus TA-8H3 4 x 5,25" extern, 5 x 3,5" intern, ATX
  • MSI KA790GX 790GX, 5.200 MT/s, onboard Radeon HD3300, 1x PCIe 2.0 x16, Sockel AM2+
  • OCZ Core V2 SSD Drive Festplatte 30.0 GB S-ATAII / 300 (fürs OS)
  • Samsung HD320KJ 320 GB (Als /home)
Alternative 2:
  • OCZ DIMM 4 GB DDR2-1066 Kit
  • CPU Sockel 775 Core 2 Duo E7400 2x 2800 MHz, 2x 1536 kByte, 1066 MHz (Quadpumped), Wolfdale
  • be quiet! Straight Power BQT E6-400W 4 Stecker
  • Asus TA-8H3 4 x 5,25" extern, 5 x 3,5" intern, ATX
  • MSI G45M-FIDR G45 Express, 1.333 MHz, onboard Intel GMA X4500HD, 1x PCIe 2.0 x16, Sockel 775
  • OCZ Core V2 SSD Drive Festplatte 30.0 GB S-ATAII / 300 (fürs OS)
  • Samsung HD320KJ 320 GB (Als /home)
Preisunterschied ca 40€. Naja mal abwarten, noch ist Zeit und ich bin offen für gute Vorschläge und Kritik ;)

Donnerstag, Dezember 18 2008

h.264 im Land der Polygone

nvidia_linuxEndich gibts ihn! Den langersehnten Treiber für Linux, der es der Grafikkarte nun gestattet der CPU bei der Dekodierung von HD Material unter die Arme zu greifen. Windowsuser kennen das als z.B. "Pure Video" - Technologie aus dem Hause Nvidia. Nachdem ATI nach inoffiziellen Berichten im Hintergrund an der XvBA API (X-Video Bitstream Acceleration) arbeitet und diese auch teilweise schon in den Catalyst Treiber integriert hat, kocht Nvidia ihr eigenes Süppchen, die VDPAU API (Video Decode and Presentation API for Unix). Die ist vergleichbar mit der Pure Video HD Technologie. Alle nötigen Files findet man ab sofort im neuen Treiber ab der Version 180.06, sodass bald mit einem breiten Spektrum an neuen Updates mit VDPAU gerechnet werden kann. Nvidia selbst liefert schon Patches aus um VDPAU mit dem mplayer nutzen zu können, dies schliesst auch Änderungen in libavcodec, libavutil, und ffmpeg mit ein. Den Patch findet man HIER auf Nvidias FTP Server. VDPAU ist derzeit in der Lage MPEG-1, MPEG-2, H.264, und VC-1 Bitstreams entscheidend zu beschleunigen, ausserdem bietet es eine API zur Bildnachbearbeitung bzw. Post-Processing (z.B. Deinterlace)  an. Die Nvidia Developer Documentation beschreibt dies so:
"The Video Decode and Presentation API for Unix (VDPAU) provides a complete solution for decoding, post-processing, compositing, and displaying compressed or uncompressed video streams. These video streams may be combined (composited) with bitmap content, to implement OSDs and other application user interfaces."
Bleibt abzuwarten, was die ganze Sache nun wirklich bringt, aber definitiv ein lang erwarteter Schritt in die richtige Richtung. Besonders im Bereich BluRay und HD Wiedergabe konnte Linux bisher leider noch nicht punkten, was sich wohl nach dieser Veröffentlichung geändert hat.

Dienstag, November 4 2008

Compiz Fusion und flackerndes Video

Auch Ibex hat seine Schattenseiten, die mir nach dem Update offenbart wurden. Scheinbar ist der neue fglrx Treiber noch fehlerhaft, denn er erzeugt im Zusammenhang mit Compiz Fusion ein Bildflackern bei der Wiedergabe von Videos. Und das sowohl im Fenster, als auch im Vollbildmodus. Sämtliche Konfigurationen wollten mit aktiviertem Compiz nicht funktionieren, nur der X11 Treiber ohne Renderunterstützung der Grafikkarte, was sich sogleich durch leichtes Ruckeln und eine insgesamt "rumpelige" Wiedergabe und eine enorme CPU Belastung äusserte. Hierzu muss allerdings gesagt werden, dass es sich bei der Videodatei um ein Matroska Video in 720p mit avc1 und a52 Codec handelte. Das war nicht hinnehmbar und so suchte ich nach Lösungen, die ich auch sogleich fand:
Section "Device" ........ Option "VideoOverlay" "off" Option "OpenGLOverlay" "on" Option "TexturedVideo" "off" ......... EndSection
sollte der /etc/X11/xorg.conf hinzugefügt werden, wobei bei mir nur die Option TexturedVideo Wirkung zeigte. Das Flackern war Verschwunden, aber die Wiedergabe nach wie vor nicht in Ordnung, denn die Option schien einfach nur die "Hilfe" der Grafikkarte zu blockieren. Nach langem Probieren mit Codecs, alternativen Wiedergabegeräten a la xvmc, x11 mit sämtlichen OpenGL Varianten, xv usw. und auch mehreren Player Frontends, komme ich zum Entschluss: Irgendetwas scheint im neuen fglrx Treiber noch nicht rund zu laufen! Deaktiviert man Compiz läuft die Wiedergabe des og. Matroska HD Videos einwandfrei, flüssig und wie gewohnt mit Renderunterstützung der Grafikkarte. Das An- und Ausgeschalte von Compiz ist zwar leider etwas nervig, aber für mich im Moment die einzige wirksame Methode. Hoffen wir auf eine schnelle Behebung! Abschliessend vielleicht noch interessant: Bei meiner Karte handelt es sich um eine ATI Radeon Mobility X1700 im Notebook.

Dienstag, September 9 2008

ATI Catalyst Treiber mit HD Support

Nach einem Artikel von softpedia.com wird ATI im Oktober diesen Jahres einen Linuxtreiber für seine Grafikkarten veröffentlichen, der es ermöglicht High Definition und Blue Ray Content auf einem Linuxsystem mit voller GPU Hardware Unterstützung abzuspielen. Damit macht sich ATI wohl viele Freunde, denn anders als die Konkurrenz von Nvidia versuchen sie dem Wunsch vieler Linuxuser entgegenzukommen endlich HD Videos abspielen zu können. Vermutlich wird man nach der Veröffentlichung auch nicht lange auf eine Antwort von Nvidia warten müssen, obwohl von offizieller Seite noch nichts angekündigt wurde. Zur Zeit ist es mit keinem Linuxtreiber möglich HD Videos hardwarebeschleunigt abzuspielen. Wir freuen uns und können gespannt sein. Vererst soll der Treiber allerdings OEM Kunden vorbehalten sein, die z.B. HTPCs mit Linux OS bauen. Der Trend geht allerdings klar in Richtung HD enabled und darum wird es bestimmt nich mehr lange dauern, bis der Treiber für alle zugänglich ist. Quelle: http://news.softpedia.com/news/ATI-to-Show-Linux-Some-Love-92929.shtml

Donnerstag, September 4 2008

ATI Grafik Powermodus setzen

Mit einem kleinen Befehl ist es möglich bei installiertem ATI Treiber den Grafikchip schlafen zu legen, bzw. herunterzutakten. Ich habe mir das ganze in ein kleines Script eingebaut.
#/bin/sh #ATI Powerdown Script echo "Setze Grafikchip in Stromsparmodus..." aticonfig --setpowerstate=1 echo "Powermodus gesetzt auf:" aticonfig --lsp|grep "*"

Mag kein tolles Script sein und auch nicht schön programmiert, spart aber einiges an Strom und ist funktionell. Ach ja um die Grafik wieder zurückzusetzen in den normalen Modus gibts den befehl: aticonfig --setpowerstate=3 Das ganze kann natürlich auch in ein Script eingebaut werden. Für mich allerdings nicht nötig ;).