Zanim zająłem się testowaniem komputerów stacjonarnych AMD Ryzen 7000 „Zen 4”, niedawno podsumowałem kilka testów porównawczych, patrząc na sterowniki ACPI CPUFreq vs AMD P-State do skalowania częstotliwości oraz różne opcje gubernatora dla mobilnych układów SoC AMD Ryzen 6000 „Rembrandt”. Jeśli jesteś ciekawy wpływu CPUFreq/P-State i różnych regulatorów na najnowsze laptopy AMD z systemem Linux, ta runda testów jest dla Ciebie.
Korzystanie z Lenovo ThinkPad X13 Gen 3 z procesorem AMD Ryzen 7 PRO 6850U „Rembrandt” SoC, przeprowadziłem ostatnio szereg testów CPUFreq/P-State, aby zobaczyć wpływ na wydajność i zużycie energii podczas pracy na zasilaniu bateryjnym. Testy przeprowadzono na komputerze ThinkPad z migawką programistyczną Ubuntu 22.10 i jądrem programistycznym Linux 6.0.
Przetestowane konfiguracje dla tego artykułu obejmowały:
-amd-pstate schedutil
-wydajność amd-pstate
-acpi-cpufreq schedutil
-acpi-wydajność cpufreq
-acpi-cpufreq ondemand
Ten sam laptop był używany do wszystkich testów z tym samym stosem oprogramowania, poza zmianą używanego sterownika skalowania częstotliwości procesora i gubernatora. Ryzen 7 PRO 6850U działał ze standardowymi częstotliwościami — różnica w zautomatyzowanej tabeli systemowej sprowadza się tylko do raportowania zegara podstawowego i turbo za pośrednictwem sysfs w oparciu o używany sterownik.
Szeroka gama systemów Linux obciążenia robocze zostały przetestowane pod kątem różnicy wydajności i energii dla tych różnych opcji w systemie Linux 6.0.
AMD P-State z wykorzystaniem harmonogramu Zarządca „Schedutil” jest powszechnym domyślnym ustawieniem AMD we współczesnych dystrybucjach Linuksa… Niestety często generowała najgorszą wydajność, jak pokazano w testach porównawczych przeglądarek. Używanie schedutil działało znacznie gorzej niż nawet acpi-cpufreq ondemand jako poprzednie powszechne domyślne ustawienie przed wprowadzeniem amd-pstate lub zdobyciem popularności przez Schedutil.
Gdy patrzymy na szczytową częstotliwość CPU, która jest uzyskiwana jako najwyższa dla dowolnego rdzeni, konfiguracja harmonogramu amd-pstate osiągała średnio około 3,3 GHz w porównaniu do harmonogramu acpi-cpufreq i ondemand acpi-cpufreq osiągając średnio około 3,6 GHz lub regulatora wydajności acpu-cpufreq ze średnią szczytową 4,19 GHz i amd-pstate tryb wydajności wyższy do 4,7 GHz.
Oczywiście niższe taktowanie w harmonogramie amd-pstate doprowadziło do niższej temperatury SoC w tym teście, ale była ona tylko o kilka stopni niższa.
Co ciekawe, patrząc na zużycie energii baterii podczas testu porównawczego przeglądarki Chrome, konfiguracje schedutil i ondemand pobierały średnio 13,6 W, podczas gdy wydajność amd-pstate wynosiła 13,9 W przy wiodącej wydajności. Konfiguracja wydajności acpi-cpufreq miała najwyższy średni pobór mocy na poziomie 15,2 W.
Jetstream 2 jest obecnie jednym z najbardziej wymagających testów przeglądarek internetowych. Ponownie, tutaj domyślna konfiguracja harmonogramu amd-pstate w Ubuntu doprowadziła do najgorszej wydajności….
Schedutil amd-pstate trzymał się znacznie niższych zegarów niż nawet acpi-cpufreq schedutil lub acpi-cpufreq ondemand.
Przynajmniej amd-pstate schedutil jest dobry do stworzenia fajnego laptopa….
Ale z wynikami zużycia energii baterii, wydajnością amd-pstate i wydajnością acpi-cpufreq tryby faktycznie zapewniały najlepszą wydajność w przeliczeniu na wat.
Schedutil AMD-pstate był konsekwentnie na ostatnim miejscu pod względem wydajności wśród testów wydajności przeglądarek internetowych.
Konfiguracja harmonogramu amd-pstate również widziałem najgorsze wyniki wydajności w grach ze zintegrowaną grafiką.
Praca z regulatorem wydajności lub nawet używanie ondemand acpi-cpufreq doprowadziło do uzyskania najlepszej wydajności na wat w grze Unvanquished o otwartym kodzie źródłowym.
W przypadku Xonotic, zarządzanie ondemand acpi-cpufreq doprowadziło do tego, że stał się odstający z niższą wydajnością niż inne konfiguracje skalowania częstotliwości procesora guracji.
Zarządca schedutil tutaj dobrze poradził sobie, zapewniając najlepszą wydajność energetyczną w tej grze o otwartym kodzie źródłowym.
W przypadku wizualizacji stacji roboczych z ParaView, wydajność amd-pstate schedutil nadal rozczarowywała w systemie Linux 6.0.
Dla programistów, oto kilka testów porównawczych kompilacji kodu z tym Lenovo ThinkPad X13 Gen3 z Ryzen 7 PRO 6850U.
Konfiguracja amd-pstate schedutil znowu był odstający, zapewniając znacznie niższą wydajność niż reszta…
Chociaż, jeśli chcesz przedłużyć żywotność baterii, amd-pstate schedutil miał średni pobór mocy podczas kompilowania jądra 16,5 watów w porównaniu do 24 W w innych konfiguracjach. 23% dłuższy czas kompilacji dla 32% redukcji zużycia energii.
Zaskakująco w testach porównawczych kompilacji czasowych Godot i Mesa, amd-pstate schedutil porównywał wiodącą wydajność amd-pstate z regulatorem wydajności.
W przypadku niektórych testów Node.js na laptopie użycie procesora amd-pstate i acpi-cpufreq schedutil prowadziło do uzyskania najlepszej wydajności w przeliczeniu na wat.
Amd-Wydajność pstate podejmowała całkowicie złe decyzje wraz z ondemand acpi-cpufreq podczas uruchamiania oprogramowania Blender 3D…
Wydajność amd-pstate pozostawała w niezręcznym stanie również dla oprogramowania renderującego Intel OSPRay Studio na Ryzen 7 PRO 6850U.
W przypadku wielu różnych testowanych obciążeń nie było dużej różnicy w przypadku laptopa Ryzen 7 PRO 6850U.
Dzięki kodowaniu wideo VP9 przy użyciu biblioteki libvpx-pstate schedutil gubernator ponownie zapewniał niższą wydajność, zapewniając niewielką przewagę w wydajności energetycznej.
To samo dotyczyło 7-Zip comp ression.
Wyniki różniły się nieco w zależności od różnych charakterystyk obciążenia. W dużej mierze zależy to od tego, w jakie obciążenia jesteś najbardziej zaangażowany i jak bardzo zależy Ci na wydajności w porównaniu z oszczędnością energii, dla której zarządca może mieć największy sens.
Łącznie przeprowadziłem ponad 100 różnych testów porównawczych, jednocześnie analizując częstotliwość szczytowa procesora, temperatura procesora i zużycie energii przez system na podstawie testu. Zobacz wszystkie dane w tym pliku wynikowym OpenBenchmarking.org. chcesz szczegółowo przeanalizować wszystkie dane pod kątem testów, które są najbardziej odpowiednie dla Twojego użytkowania. Ogólnie rzecz biorąc, chociaż szczególnie w konfiguracji amd-pstate schedutil, która staje się coraz bardziej domyślna wśród dystrybucji Linuksa, czasami podejmowano prawdopodobnie słabe decyzje dotyczące skalowania częstotliwości procesora, co prowadziło do znacznie niższej wydajności niż reszta. Tryb wydajności amd-pstate miał tendencję do zapewniania najlepszej ogólnej wydajności i zwykle tylko z marginalnym wzrostem wskaźnika zużycia energii baterii.