Lecz się sam 3, czyli ustaw sobie wiatraki w Dellu

Ta część będzie trochę ryzykowna (przy braku rozsądku możemy nadwyrężyć lub nawet uszkodzić sprzęt), ale pozwoli nam ustawić wiatraki w części modeli laptopów Dell.

Całość została sprawdzona na Windows 10 i Dell Precision 5510, powinna działać na różnych G5, Inspiron, XPS i Precision (więcej).

Historia jest krótka - ostatnio pracowałem nad PHP 7.4 (opisałem nieinwazyjną instalację z PostgreSQL i Apache), zrobiłem krótkie orientacyjne porównanie wydajności Ubuntu w Hyper-V ... i niejako przy okazji musiałem zająć się używanym sprzętem, na którym nie mogłem przesmarować CPU ani GPU ani dodać padów na VRM.

Problemem był tu irytujący wiatrak GPU, który również był nie do ruszenia.

Zacząłem oczywiście od ustawienia profili w odpowiednim narzędziu producenta i Windows, to jednak nie pomogło.

Zrobiłem wszystko co możliwe jeśli chodzi o instalację sterowników, zmniejszenie obciążenia procesora i przełączenie wszystkich aplikacji na zaintegrowaną kartę graficzną (laptop miał być ostatecznie używany do zastosowań bardziej biurowych niż gier).

W końcu zacząłem szukać alternatywy programowej... i znalazłem.

DellFanCmd

Narzędzie małe i z kodem źródłowym.

Jest dostępne z GitHub (https://github.com/AaronKelley/DellFanCmd/releases) i posłuży nam do wyłączenia automatycznej kontroli wiatraków z BIOS.

SpeedFan

Znany i zasłużony program dostępny ze strony http://www.almico.com/sfdownload.php, który pozwala na monitorowanie temperatur, wentylatorów, parametrów SMART, jak również zmienianie prędkości wiatraków i ustawianie zegara na płycie głównej.

Ostatnia wersja pochodzi z 2016 i część opcji jest oznaczona jako eksperymentalna (autor odpowiada w swoim Mantisie, więc kod chyba nie jest porzucony).

Połączenie klocków

Narzędzie DellFanCMD rozpakowywujemy do jakiegoś katalogu, zaś SpeedFan instalujemy.

Następnie tworzymy skrót do SpeefFan.exe - ważne jest zaznaczenie opcji "Start minimized" i "Run as administrator".

Uruchamiamy SpeedFan, klikamy przycisk "Configure" i przechodzimy do zakładki "Options" i włączamy "Enable DELL support", "Set fans to 100% on program exit" i "Start minimized", a następnie klikamy OK i restartujemy aplikację.

Po restarcie aplikacji klikamy "Configure" i przechodzimy do "Speeds" (powinny tam być wpisy "Pwm1" i "Pwm2" - w moim modelu są związane odpowiednio z wiatrakami CPU i GPU)

Ustawienia dotyczące naszych preferencji prędkości są zmieniane w "Fan Control"

Dodajemy tam nowy kontroler, wybieramy Pwm i temperatury które mają mieć wpływ na wiatrak, jak również podajemy przy jakich temperaturach powinna być zmieniana prędkość.

Ważne jest tutaj zaznaczenie "MAX of speeds" (wtedy program będzie wybierał maksymalną prędkość z wartości ustawionych dla wszystkich czujników temperatury).

Na rysunku jest tylko pewna propozycja - monitorowane są temperatury CPU i GPU.

Można tutaj rozważyć ustawienie opcji "Hystereris" - po osiągnięciu przez wiatrak danej prędkości nie będzie ona zmniejszana dopóki temperatura nie spadnie o określoną w opcji wartość.

Podobne ustawienia robimy dla drugiego wentylatora (znów - to są tylko pewne propozycje, które u mnie sprawdziły się całkiem dobrze, a do innych zastosowań mogą być niewystarczające).

Następnie wchodzimy do Local Group Policy Editor (Edit Group Policy z menu Start).

Ustawiamy tam wyłączanie naszej kontroli przy wyłączaniu systemu

i podobnie robimy dla jego startu (wszystko zadzieje się po logowaniu; pierwsza komenda to uruchomienie skrótu do SpeedFan).

Ostatnim krokiem będzie włączenie automatycznej kontroli prędkości w programie SpeedFan (Automatic fan speed).

Podsumowanie 

Całość jest uruchamiana po logowaniu, nasze ustawienia działają również po standby. Po wylogowaniu SpeedFan ustawia wiatraki na 100%, a DellFanCmd przywraca kontrolę z BIOS.

Nie mam problemów z funkcjami Fn+F11 i Fn+F12 ani żadnymi innymi. Jeżeli chcielibyśmy tego używać również po hibernacji, konieczne mogą być natomiast dodatkowe ustawienia typu zadanie Windows.

Zauważyłem, że przez większą część spokojnej pracy przy obecnych temperaturach pokojowych temperatura CPU oscyluje normalnie w granicach 39 - 50 stopni, zaś GPU nagrzewa się do około 45 - 50 stopni.

Widzę również, że wiatraki mają regulację skokową, a nie płynną (stąd takie zmiany w moich ustawieniach) i że po restarcie laptopa GPU ma kilka stopni więcej niż przed restartem (ciekawe).

Sam SpeedFan również sprawił mi dużo problemów ze zrozumieniem zasad jego działania - jeszcze wczoraj napisałem:

To dosyć daleko od wartości krytycznych, ale... nie do końca jestem przekonany jaki jest algorytm Speed Fan dotyczący nagłych zmian (na ile są one poprawnie przetwarzane czy ignorowane) i czy Speed Fan "nie podkręca" wiatraka na zapas (na wykresie w "Fan Control" np. widzę 50% prędkości wiatraka i dla podanych tam temperatur program potrafi ustawić 100%).

Dzisiaj już po napisaniu i opublikowaniu wpisu widzę, że dodatkowym wymaganym ustawieniem jest zwiększenie wartości "Warning" dla wszystkich temperatur CPU - przy ich przekroczeniu program wydaje się ustawiać 100% niezależnie od sekcji "Fan Control" (ja zmieniłem to na 60 C).

Inną ciekawostką jest fakt obecności magistrali ISA (ilość archaicznych elementów w x86 jest jednak zbyt duża...).

Podsumowując podsumowanie - rozwiązanie nie jest może idealne (być może pozostawię DellFanControl i użyję czegoś bardziej intuicyjnego zamiast SpeedFan), ale laptop już teraz stał się znacznie bardziej przyjemny w używaniu, bo w wielu momentach nie generuje pisku, a chłodzi się wyłącznie gdy tego naprawdę trzeba (przynajmniej tak wynika z odczytów).

Mission complete.

Oryginalny wątek dotyczący całości: http://forum.notebookreview.com/threads/dellfancmd-%E2%80%93-tool-to-e... 

PS. Sprawdzałem już Notebook FanControl (brak konfiguracji), HWInfo (niezbyt precyzyjna) i inne narzędzia...