Aplikacje systemu Windows 8 ulegają awarii bez komunikatów o błędach na kartach graficznych AMD/ATI

Ostatnio napotkałem dziwne problemy z niektórymi nowoczesnymi aplikacjami Windows 8 . Kilka z nich (nie wszystkie) działało nieprawidłowo. Kiedy uruchamiałem te aplikacje, nigdy się nie uruchamiały i po sekundzie lub dwóch wróciłem do ekranu startowego . (Start)Zrobiłem trochę badań za pomocą Podglądu zdarzeń(Event Viewer) . Mówiło się, że te aplikacje uległy awarii z kodem wyjątku 0xc0000005 i że przyczyną problemu był plik atidxx64.dll zainstalowany przez sterownik mojej AMD/ATIO co chodzi? Jak rozwiązać ten problem?

Opis problemu — więcej szczegółów

Jak wspomniałem we wstępie, ten problem nie dotyczy wszystkich aplikacji Windows 8 . Tylko(Just) niektóre aplikacje. Na urządzeniach z systemem Windows 8(Windows 8) nie mogłem korzystać z aplikacji, takich jak AccuWeather dla systemu Windows 8(AccuWeather for Windows 8) lub Digital Live Tile Clock . Wszystkie inne działały dobrze.

Ponieważ nie pojawiły się żadne komunikaty o błędach, byłem zaskoczony. O co chodzi? Sprawdziłem ustawienia zapory i wszystko było w porządku. Nie blokował żadnych aplikacji Windows 8 .

Następnie otworzyłem zaufaną przeglądarkę zdarzeń(Event Viewer) . Wszedłem do Windows Logs -> Application i szukałem błędów. Nie zajęło mi dużo czasu ich odnalezienie.

Windows 8, awaria aplikacji, AMD, ATI, 0xc0000005

Dla każdej aplikacji, która działała nieprawidłowo, rejestrowano te same błędy i kody. Ponadto dla każdej uruchamianej aplikacji utworzono dwa dzienniki błędów.

Poniżej wyświetlany jest pierwszy dziennik błędów. Wspomniał plik atidxx64.dll jako moduł powodujący błąd. Wspomniano również o dziwnym kodzie wyjątku 0xc0000005 .

Windows 8, awaria aplikacji, AMD, ATI, 0xc0000005

Drugi dziennik błędów mówił, że „Proces został zakończony z powodu nieobsłużonego wyjątku”("The process was terminated due to an unhandled exception") .

Windows 8, awaria aplikacji, AMD, ATI, 0xc0000005

To wszystko było bełkotem, ale miałem więcej szczegółów, od których mogłem rozpocząć poszukiwania.

Znalazłem ludzi, którzy napotykają podobne problemy, a niektórzy stwierdzili, że wina leży po stronie sterowników AMD/ATI i należy je usunąć. Uważam, że to trochę ekstremalne rozwiązanie. Gdyby istniała jakakolwiek niezgodność z Windows 8 , byłaby to powszechna, dobrze znana i Microsoft lub AMD coś z tym zrobili. Doszedłem do wniosku, że problem musi leżeć w sposobie skonfigurowania sterownika wideo. Dlatego(Therefore) zacząłem eksperymentować z każdym ustawieniem, aż znalazłem to, które powodowało awarię.

Główna przyczyna(Root Cause) — filtrowanie morfologiczne

Po chwili majstrowania przy wszystkich ustawieniach aplikacji 3D karty graficznej odkryłem, że po wyłączeniu jednego konkretnego ustawienia wszystko działało dobrze.

Winowajcą było filtrowanie morfologiczne(Morphological Filtering) . Po włączeniu aplikacje Windows 8 , o których wspomniałem, uległy awarii. Kiedy był wyłączony, działały bez żadnych problemów.

Windows 8, awaria aplikacji, AMD, ATI, 0xc0000005

Co to jest filtrowanie morfologiczne(Morphological Filtering) i do czego służy? AMD ma tu trochę przyzwoitej dokumentacji na temat tej funkcji graficznej: Morphological Anti-Aliasing . Podobno jest to technologia poprawiająca jakość obrazu w grach wideo.

Miałem to włączone jako ustawienie ogólnosystemowe, więc wyłączenie go było koniecznością, aby pozbyć się problemu, który miałem. Jednak sterowniki AMD/ATI umożliwiają tworzenie profili aplikacji. Dlatego w przypadku gier, w które chciałem grać, mogłem osobno włączyć to ustawienie, aby nie wpływać na działanie aplikacji Windows 8 zainstalowanych na moim komputerze.

Ale dość gadania. Jak to wyłączyć? Otwórz "Centrum sterowania AMD Vision Engine"("AMD Vision Engine Control Center") . Przejdź do "Gaming -> 3D Application Settings" .

Windows 8, awaria aplikacji, AMD, ATI, 0xc0000005

W kategorii Ustawienia systemu(System Settings) ustaw opcję Filtrowanie morfologiczne(Morphological Filtering) na Wyłączone(Off) i kliknij Zastosuj(Apply) .

Problem rozwiązany!

Wniosek

To był frustrujący problem. Brak komunikatów o błędach, trudnych do znalezienia wskazówek i mało informacji dostępnych w sieci. Miałem szczęście, że mój eksperyment doprowadził mnie do tego rozwiązania. Mam nadzieję, że ten artykuł pomoże innym napotykającym podobne problemy.



About the author

Jestem inżynierem oprogramowania z ponad 10-letnim doświadczeniem w branży Xbox. Specjalizuję się w tworzeniu gier i testowaniu bezpieczeństwa. Jestem także doświadczonym recenzentem i pracowałem nad projektami dla największych nazwisk w branży gier, w tym Ubisoft, Microsoft i Sony. W wolnym czasie lubię grać w gry wideo i oglądać programy telewizyjne.



Related posts