azraelsk
Goto Top

GPU-Hardwarebeschleunigung in Win XP bei Programmstart und Ende per Script ändern

Hallo,

ich recht neu hier, und kann leider für meine Problemstellung keine gute Antwort finden - weder hier noch bei Tante Google.

Das Problem betrifft das Zusammenspiel zwischen einer Java-basierten Bildverarbeitungssoftware (Gallery Remote) und meiner ATI-Grafikkarte HD 4870.
Offensichtlich hat ATI seit langem irgendwo einen Bug im Catalyst-Treiber, oder auf Hardwareebene. Folgendes Problem trat auch schon bei OpenOffice.org bei der Darstellung von ppt-Dateien auf.

Der Bildaufbau ist deutlich gebremst, die Bedienbarkeit des Programms eingeschränkt.

Wer sichs anschauen mag:
=> kurzes Youtube Video des Bugs

Das macht das Programm ziemlich unbenutzbar. Mit NVIDIA und Intel Grafikkarten funktioniert alles einwandfrei.
Mit der ATI-Karte auch, allerdings muss man den Treiber deinstallieren ;)

=> kurzes Youtube Video des funktionierenden Programms ohne Graka-Treiber

Mit dem aktuellen Catalyst ist das Problem immer noch existent, kann jedoch durch Herabsetzen der Hardwarebeschleunigung behoben werden. Für mich nur ein workaround, aber wenns nicht anders geht...

JPG-Screenshot, 50kb

Meine Frage:

Kann ich den Regler der HW-Beschleunigung irgendwie via Script (z.b. *.bat) setzen ? Dann würde ich mittels dieses Scripts das Programm aufrufen, vorher wird die HW-Beschleunigung verringert, und nach Beenden wieder erhöht. Einfach automatisieren... ist das möglich ?

Noch besser wäre natürlich ein Bugfix, aber bei ATI/AMD kann man da vermutlich jahrelang warten, bis die mal funktionierende HW/SW rausbringen...

Content-Key: 121848

Url: https://administrator.de/contentid/121848

Printed on: April 20, 2024 at 02:04 o'clock

Member: rubberman
rubberman Aug 02, 2009 at 22:37:19 (UTC)
Goto Top
Hallo Azraelsk,

schwierig dir hierbei zu helfen. Afaik ist es ein Registry-Wert, der die Hardwarebeschleunigung angibt. Den musst du aber erst mal finden.

Du könntest ggf. so vorgehen:
- Öffne den Registry-Editor und hangle dich vor bis
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
- Exportiere den Schlüssel in eine *.reg -Datei um Änderungen problemlos rückgängig machen zu können.
- Suche in diesem Schlüssel nach "Acceleration" bzw. "Acceleration.Level"
- Solltest du einen Key mit diesem Namen und einem DWORD-Wert gefunden haben, ändere die Hardwarebeschleunigung händisch, wie oben von dir beschrieben
- Wechsle zurück zum Registry-Editor und aktualisiere die Ansicht mit F5
-Falls sich der Wert geändert hat, kannst du im Registry-Editor diesen Wert verändern und schauen, wie deine Grafikkarte reagiert.
-Unter Umständen musst du deine suche fortführen oder auf weitere Schlüssel erweitern.

Wenn du dir sicher bist den richtigen Key gefunden zu haben, kannst du REG ADD in einem Batch verwenden, um die Änderungen per Script vorzunehemen.

Hoffe, das hilft dir weiter.

Grüße
rubberman
Member: Azraelsk
Azraelsk Aug 03, 2009 at 09:54:03 (UTC)
Goto Top
Hallo rubberman,

danke für die schnelle Antwort. Ich habe den entsprechenden Wert hier gefunden:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\{A75F8434-9848-4FE6-A689-1FE995CD3EAB}\0000\
Name: Acceleration.Level, Typ DWORD

Der Eintrag ist nur dann angelegt, wenn die Hardwarebeschleunigung reduziert worden ist - bei maximaler Beschleunigung existiert der gesamte Schlüssel nicht.

Leider zeigt eine Änderung keine direkten Auswirkungen - der Regler der Windows-Systemsteuerung verschiebt sich zwar, doch offensichtlich benötigt die ATI-Karte einen kurzen "Reset", damit die Einstellung auch aktiv wird. Wird die HW-Beschleunigung über die Systemsteuerung geändert, flackert der Bildschirm kurz (ca. 0.5s schwarz) sobald auf "übernehmen" geklickt wird. Bei Änderung in der registry passiert das nicht, die Applikation arbeitet nicht richtig.

Damit bleibt mir wohl nur die Möglichkeit, die Einstellung immer manuell zu ändern... ich änder auf gelöst, wenn keiner mehr Ideen hat face-smile
Member: miniversum
miniversum Aug 03, 2009 at 10:51:16 (UTC)
Goto Top
Du köntest das auch mit z.B. AutoIt aufzeichnen und aus dem Autoitscript eine exe erzeugen.
Einmal fürs herabsetzen udn einmal fürs heraufsetzen der Hardwarebeschleunigung. Achte daraus nach Möglichkeit nur Tastenkombinationen zu benutzen. Das erleichtert die Reproduzierbarkeit.