Yandex twierdzi, że sterowniki AMD Windows niesprawiedliwie faworyzują Google Chrome, Microsoft Edge
Rosyjska firma programistyczna Yandex, która również produkuje przeglądarki, twierdzi, że sterowniki graficzne AMD niesprawiedliwie faworyzują inne przeglądarki oparte na Chromium, w tym głównie Google Chrome i być może także Microsoft Edge. W poście na blogu opisującym swoje nowe odkrycia firma twierdzi, że sterowniki AMD zawieszałyby się ponad pięć razy rzadziej i zużywałyby średnio o 8% mniej pamięci, gdy te sterowniki wykryłyby plik „chrome.exe”.
Poniższy wykres przedstawia schemat awarii sterowników AMD. Linia w kolorze czerwonym reprezentuje liczbę awarii sterownika podczas korzystania z obejścia pliku chrome EXE.
Programiści Yandex najwyraźniej natknęli się na to odkrycie, badając problem z przewijaniem strony internetowej, który nie występował w Chrome i Edge. Wydawało się, że ten problem został rozwiązany, gdy nazwa pliku „browser.exe” została zmieniona na „chrome.exe”.
Brave CEO Brendan Eich zwrócił uwagę na ten raport na Twitterze:
Yandex reports [1] that renaming their Chromium-based browser's GPU process name to "chrome.exe" decreases GPU process crashes 5x and memory consumption by 8% when AMD drivers are used. Why? Driver authors hardcode chrome.exe and optimize for Chrome.😠
[1] https://t.co/0rQC22N3Co— BrendanEich (@BrendanEich) March 17, 2023
Yandex wyjaśnił to szczegółowo w poście na blogu Habr (przetłumaczonym przez Google na angielski):
Kiedyś nasz zespół napotkał błąd: na laptopach Lenovo w Yandex Browser przewijanie stron internetowych z touchpada było zbyt ostre, ale w innych przeglądarkach (Chrome i Edge) tego problemu nie zaobserwowano.
Po przyjrzeniu się kodowi zdaliśmy sobie sprawę, że nasza logika obsługi zdarzeń na touchpadzie nie różni się od open source Chromium, na którym oparta jest zarówno nasza przeglądarka, jak i Google Chrome. Więc problem leżał gdzie indziej.
Dla ciekawości spróbowaliśmy zmienić nazwę pliku wykonywalnego naszej przeglądarki z browser.exe na chrome.exe – i voila! Skoki podczas przewijania zostały naprawione. Prawdopodobnie w sterownikach touchpada pewna lista nazw plików aplikacji została „zakodowana na stałe”, dla której zastosowano poprawkę dotyczącą tego problemu.
[….]
Wyniki bardzo nas zaskoczyły: dla użytkowników kart graficznych AMD z grupy eksperymentalnej liczba awarii procesów GPU spadła 5,5-krotnie, zużycie pamięci przez proces GPU zmniejszyło się średnio o 8%, a otwieranie stron internetowych w przeglądarce i responsywność interfejsu również nieco przyspieszona
Yandex twierdzi, że skontaktował się z AMD w sprawie tych ustaleń i już włączył optymalizację, tj. plik wykonywalny o zmienionej nazwie na chrome.exe, w swoich przeglądarkach począwszy od wersji 22.9.0.
Dodaj komentarz