Contents — find the section you need

Change parameters and verify

Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.

Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.

The experiment controls are in English.

Open experiment panel in a new tab

Download reproduction source

Per un server domestico, è necessario considerare i lunghi periodi di inattività e il consumo energetico per carico di lavoro completato, oltre ai watt di picco. Questo articolo fornisce un metodo di registrazione con un misuratore esterno. Non è stato misurato alcun server reale; i dati allegati a 40 W sono una validazione aritmetica sintetica.

Definire l'area di misurazione

Specificare se il misuratore copre solo il server, le perdite dell'UPS, l'archiviazione esterna o le apparecchiature di rete. Utilizzare un misuratore con una potenza nominale adeguata; non è necessaria alcuna modifica al cablaggio interno.

Leggere la potenza attiva (W) e l'energia (Wh). La tensione moltiplicata per la corrente fornisce la potenza apparente (VA); il fattore di potenza è importante per i carichi CA. Non considerare V×A come watt consumati senza questa distinzione. Consultare i principi fondamentali della misurazione della potenza di Yokogawa per la potenza attiva/apparente e il fattore di potenza. Annotare la risoluzione, la precisione, l'intervallo di registrazione e l'intervallo a basso carico del misuratore dal relativo manuale.

Diagram 1 · Use the button to switch views
Confine, registrazione inattiva, carico di lavoro fisso e flusso di lavoro di integrazione.

Definire uno stato di inattività

Evitare aggiornamenti all'avvio e indicizzazione. Registrare servizi, impostazioni della CPU, residenza del modello GPU, stato di rotazione del disco, display, ventole e temperatura ambiente. Scegliere un intervallo fisso, non solo una bassa percentuale di CPU. Una finestra di dieci minuti potrebbe non rilevare un'attività che viene eseguita ogni trenta minuti; iniziare con un log più lungo per identificare i cicli.

Dischi spenti e in rotazione sono condizioni separate. Risparmio energetico, latenza di primo accesso e conteggio di avvio/arresto sono assi di valutazione distinti.

Mantenere fissi i carichi di lavoro di inferenza e archiviazione

Per l'IA, fissare modello, quantizzazione, prompt, limite di output, concorrenza e stato della cache. Utilizzare local-LLM measurement per allineare i conteggi di avvio/completamento delle richieste e generati con il log di consumo energetico. Separare i test con caricamento incluso dai test con modello residente.

Per l'archiviazione, impostare il numero di file, i byte, le letture/scritture e lo stato della cache utilizzando dati di test dedicati. Definire il completamento come il ritorno dell'applicazione o il completamento della sincronizzazione. Le letture con cache hit non misurano solo il disco.

Integrazione dei watt nel tempo

Con i timestamp t in secondi e la potenza P in watt, un'approssimazione trapezoidale fornisce:

E_{\mathrm{Wh}}=\frac{1}{3600}\sum_i\frac{P_i+P_{i+1}}{2}(t_{i+1}-t_i)

Dividere Wh per la durata in ore per ottenere la potenza media in W. Un consumo costante di 40 W per 600 s corrisponde a 6,667 Wh. Ipotizzando un consumo continuo di 40 W per 24 ore su 30 giorni, si ottengono 28,8 kWh. Questi sono esempi aritmetici, non rappresentano i consumi misurati in questo sito né una previsione di bolletta.

Prova l'integrazione con il file CSV

Salvare power_log.py e il CSV sintetico insieme. L'esecuzione è stata verificata con Python 3.12.3 utilizzando solo la sua libreria standard:

python3 power_log.py server-power-synthetic.csv

Output previsto: duration_s=600, mean_W=40, energy_Wh=6.666666… e samples=601. Il risultato della validazione è disponibile. Utilizzare le colonne time_s, power_W e un intervallo continuo per file. Lo strumento rifiuta tempi duplicati, valori non finiti, potenza negativa e intervalli superiori a 2 s. Questa impostazione predefinita presuppone una frequenza di campionamento di 1 Hz; modificare esplicitamente --max-gap per un intervallo diverso.

peak_sampled_W è il campione più grande, non una garanzia sui picchi tra i campioni. Un misuratore che riporta le medie degli intervalli potrebbe richiedere un'integrazione adattata a tale convenzione di output.

Interpretazione dei confronti

Riportare il Wh totale separatamente dal Wh incrementale dopo aver sottratto il W medio a riposo moltiplicato per la durata del carico di lavoro. La sottrazione presuppone che lo stato di inattività sarebbe persistito e non isola con precisione il consumo energetico di CPU, GPU o disco. L'efficienza delle ventole e dell'alimentatore può variare anche quando cambia una singola impostazione del carico di lavoro.

Un consumo maggiore in watt può comunque tradursi in un minor consumo in Wh se lo stesso lavoro viene completato prima. Lunghi periodi di inattività possono inoltre annullare piccoli risparmi su lavori di breve durata. In ogni confronto è necessario includere i parametri di riferimento, l'ambiente, l'intervallo di registrazione, le ripetizioni, la durata, il consumo medio in watt (W), in Wh e il lavoro completato.

What to read next

Control inputs and generated work for energy comparisons.Confronto tra LLM locali: prima risposta, tasso di generazione e memoriaReview the backgroundBackup e ripristino del server domestico: un piccolo esercizio di ripristinoExplore another aspect of this fieldDove risiedono i dati di Docker: livelli, volumi e backup