Buonasera a tutti,
Ho una workstation Dell T5600 con doppio processore Intel Xeon, ciascuno col suo dissipatore munito di ventola, più un array di 3 ventole più piccole posto sulla parte anteriore del case.
Ora, il problema è che il firmware della scheda madre, in quanto a gestione termica, fa schifo! Mi sembra di notare che usi i dati del sensore ambientale di temperatura per controllare le ventole, invece di usare la temperatura riportata dai sensori di ciascuna CPU per controllare le ventole, appunto, di ciascuna CPU. Il sensore ambientale non so dove sia di preciso, ma dev'essere in una posizione molto periferica, perché infatti in idle segna circa 22 gradi fissi, e sale solo di poco man mano che le CPU iniziano a scaldare. Di conseguenza, le mie CPU arrivano tranquillamente agli 85 gradi senza che le ventole partano al massimo. Questo è ciò che il firmware fa quando nel BIOS imposto la velocità delle ventole su "Auto".
Ovviamente non va bene, e infatti quando mi ritrovo a dover eseguire operazioni pesanti e lunghe, mi tocca riavviare il PC, entrare nel BIOS e impostare la velocità delle ventole su "High". Così loro partono al massimo e tengono i processori a temperature ragionevoli anche sotto carichi pesanti.
Vorrei risolvere questo problema ispirandomi a questo progetto: https://github.com/algirdasc/t3600_fancontrol
Le ventole della mia workstation hanno a quanto pare soltanto 3 stati: spenta, bassa velocità, alta velocità.
In pratica vorrei scrivermi un programmino in C/C++ che ogni 5 secondi lancia due thread, ciascuno dei quali valuta la temperatura di una CPU e, se essa non è bassa ma nemmeno elevatissima, comanda le ventole facendole passare ripetutamente, a cicli brevissimi, tra lo stato a massima velocità e quello a bassa velocità, in modo da emulare un segnale analogico che le faccia girare al 50% circa della velocità massima.
Secondo voi è un'idea sensata o rischio di fare un danno alle ventole?
Grazie e buona giornata!
Ho una workstation Dell T5600 con doppio processore Intel Xeon, ciascuno col suo dissipatore munito di ventola, più un array di 3 ventole più piccole posto sulla parte anteriore del case.
Ora, il problema è che il firmware della scheda madre, in quanto a gestione termica, fa schifo! Mi sembra di notare che usi i dati del sensore ambientale di temperatura per controllare le ventole, invece di usare la temperatura riportata dai sensori di ciascuna CPU per controllare le ventole, appunto, di ciascuna CPU. Il sensore ambientale non so dove sia di preciso, ma dev'essere in una posizione molto periferica, perché infatti in idle segna circa 22 gradi fissi, e sale solo di poco man mano che le CPU iniziano a scaldare. Di conseguenza, le mie CPU arrivano tranquillamente agli 85 gradi senza che le ventole partano al massimo. Questo è ciò che il firmware fa quando nel BIOS imposto la velocità delle ventole su "Auto".
Ovviamente non va bene, e infatti quando mi ritrovo a dover eseguire operazioni pesanti e lunghe, mi tocca riavviare il PC, entrare nel BIOS e impostare la velocità delle ventole su "High". Così loro partono al massimo e tengono i processori a temperature ragionevoli anche sotto carichi pesanti.
Vorrei risolvere questo problema ispirandomi a questo progetto: https://github.com/algirdasc/t3600_fancontrol
Le ventole della mia workstation hanno a quanto pare soltanto 3 stati: spenta, bassa velocità, alta velocità.
In pratica vorrei scrivermi un programmino in C/C++ che ogni 5 secondi lancia due thread, ciascuno dei quali valuta la temperatura di una CPU e, se essa non è bassa ma nemmeno elevatissima, comanda le ventole facendole passare ripetutamente, a cicli brevissimi, tra lo stato a massima velocità e quello a bassa velocità, in modo da emulare un segnale analogico che le faccia girare al 50% circa della velocità massima.
Secondo voi è un'idea sensata o rischio di fare un danno alle ventole?
Grazie e buona giornata!