Jak okiełznać szwankujący procesor? Praktyczne scenariusze użycia ThrottleStop
W ostatnią sobotę, 3 listopada, na łamach dp pojawił się artykuł poświęcony aplikacji ThrottleStop, w którym tłumaczę najważniejsze funkcje tego programu, prezentując jednocześnie przebieg procesu undervoltingu. Część z was zasugerowała jednak, że zabrakło tam bardziej obrazowych scenariuszy: praktycznych przykładów tego, jak można rzeczony program wykorzystać. Cóż, czas zatem nadrobić zaległości i przenieść się na grunt usuwania konkretnych problemów.
05.11.2018 06:35
Ogólnie rzecz biorąc, throttling procesorów w urządzeniach mobilnych wynika z jednej z dwóch przyczyn: mało wydajnego chłodzenia lub zbyt restrykcyjnego limitu mocy. Przy czym często zdarza się tak, że producent wiedząc o ograniczeniach układu chłodzenia, intencjonalnie ustawia niski limit mocy, aby nie dopuścić do przegrzania sprzętu. Oczywiście w dalszym ciągu pozostaje aktywny parametr PROCHOT, określający temperaturę graniczną dla procesora, przy której zaczyna się zrzucanie zegara. Niemniej, szczególnie w sprzęcie przystosowanym do pracy w terenie, producenci wolą redukować prądy, ograniczając tym samym nagrzewanie obudowy.
Jest to rodzaj kompromisu. Stosując ręczną optymalizację programem ThrottleStop, również trzeba iść na kompromis, tyle że w takim wypadku o wszystkim decyduje użytkownik, a nie producent. Przez to można na przykład przygotować kilka własnych profili, każdy do pracy w innych warunkach, co zawsze będzie lepsze niż jedno globalne ustawienie. Natomiast o co w tym wszystkim chodzi, pokażę już na przykładach z życia codziennego i kilku popularnych modelach sprzętu...
Przykład 1. – Microsoft Surface Pro (2017)
Ten model komputera to właściwie tablet, wyposażony na dodatek – w podstawowej wersji z procesorem Core m3-7Y30 – w pasywne chłodzenie. Mimo to pod maksymalnym obciążeniem jego CPU osiąga raptem 50 st. Celsjusza, ale i tak częstotliwość zegara taktującego procesora spada do 1,7 - 1,8 GHz, choć dla obydwu aktywnych rdzeni powinna wynosić 2,4 GHz. Dlaczego?
Nie, tym razem winnym nie jest parametr PROCHOT, wszak wynosi aż 90 st. Celsjusza. Chcąc ograniczyć temperaturę obudowy i uzyskać jak najwyższy czas pracy na baterii, Microsoft skonfigurował BIOS tak, aby przy długotrwałym obciążeniu budżet energetyczny nie przekraczał 6 W. Na szczęście, odwiedzając zakładkę TPL w ThrottleStopie limit Turbo Boost Power Max można swobodnie podnieść aż do 10 W. Tablet zrobi się co prawda wyraźnie cieplejszy, ale w przypadku pracy stacjonarnej nie ma to większego znaczenia. Efekt widać poniżej.
Przykład 2. – Lenovo ThinkPad T480s
Drugi przykład – ultrabook z procesorem Core i5-8250U. To bardzo specyficzny przypadek, ponieważ zainstalowany układ obliczeniowy ma zalecany budżet energetyczny 15 W i radiator wielkości paczki zapałek, a tak naprawdę, techniczne rzecz biorąc, jest on kalką 45-watowego modelu Core i7-7700HQ, a więc konstrukcją z czterema rdzeniami Skylake. Jedyna różnica to turbo przecięte o 400 MHz, do 3,4 GHz. W rezultacie chip szybko notuje 97 st. Celsjusza i zrzuca taktowanie do 2,3 GHz.
Co zrozumiałe, chodzi o zbyt wysoką temperaturę pracy. Ale nie tylko. Energooszczędne procesory Intela z serii „U”, w odróżnieniu od wysokowydajnych „H”, realizują throttling nie poprzez bezpośrednią zmianę wartości taktowania, ale narzucenie restrykcyjnego limitu mocy. Jedni producenci – godząc się z tym faktem – zachowują sugerowany limit 15 W, wiedząc doskonale, że w takich warunkach procesor nie jest w stanie osiągnąć maksymalnego turbo. Drudzy windują zaś limit do 40 - 45 W, ale kiedy tylko jednostka zbliża się do punktu PROCHOT, moduł zarządzający i tak narzuca wyjściowe ograniczenie. ThinkPad T480s należy do tej drugiej grupy, jednak summa summarum nie ma to większego znaczenia, bo sprzęt tak czy siak mocno throttluje.
Co można z tym zrobić? Jeśli komputer ma ciasny limit mocy, to najpierw warto zwiększyć go w zakładce TPL, gdzieś tak do 45 W. A jeśli nie – od razu przejść do undervoltingu, o którym pisałem już we wcześniejszym poradniku. Zrzuciwszy po 125 mV na rdzeniach i pamięci podręcznej, a także 100 mV na zintegrowanej grafice, udało mi się utrzymać CPU z dala od PROCHOT'u.
Przykład 3. – HP Pavilion Gaming 2018
Na koniec – laptop dla graczy, wyposażony w wydajny procesor Core i5-8300H i grafikę GeForce GTX 1050 Ti, które to pracują na jednodrożnym układzie chłodzenia, czyli nagrzewają się nawzajem. Efekt jest łatwy do przewidzenia: zarówno taktowanie CPU, jak i GPU leci w dół. Zamiast pracować z deklarowanym turbo 3,9 GHz, Core i5-8300H osiąga 2,9 - 3,0 GHz, i jeszcze utrudnia pracę karcie graficznej. Mając na uwadze tę zależność, należy podejść do zagadnienia bardziej globalnie.
W pierwszej kolejności warto zrobić undervolting karty graficznej, co z całą pewnością ograniczy wydzielanie ciepła przez ten komponent. Później można zabrać się za sam procesor. Tylko, co w przypadku, kiedy obniżenie napięcia CPU nie eliminuje throttlingu do końca? Tak właśnie było w przypadku przykładowego Paviliona, gdzie po ujęciu 125 mV na procesorze, cache'u i iGPU zegar rdzenia zatrzymuje się na 3,4 GHz, wciąż zmagając się z throttlingiem, a większy undervolting powoduje niestabilność. Nie mogąc dobrnąć do docelowych 3,9 GHz, postanowiłem od razu zrzucić zegar do 3,4 GHz, aby dzięki temu móc troszkę bardziej obniżyć napięcie i chociaż ulżyć układowi chłodzenia (i grafice). Owszem, jest to forma pójścia na ustępstwa, ale zwróćcie uwagę, że rezultat w dalszym ciągu pozostaje lepszy od fabrycznego.