Quali sono le differenze tra l'ora dell'orologio a muro, l'ora dell'utente e l'ora della cpu


14

Stiamo eseguendo lavori informatici con GridEngine. Ogni lavoro restituisce 3 tempi diversi:

  • Orologio da parete
  • Tempo dell'utente
  • Tempo CPU

Quali sono le differenze tra questi tre? Quale di questi tre è più adatto per confrontare le prestazioni di due applicazioni / script

Risposte:


18

Il tempo dell'orologio a parete è il tempo effettivo impiegato per eseguire un lavoro. Ciò equivale a programmare il tuo lavoro con un cronometro e il tempo misurato per completare l'attività può essere influenzato da qualsiasi altra cosa che il sistema stia facendo in quel momento.

Il tempo dell'utente misura il tempo impiegato dalla CPU per eseguire il codice. Questo non conta nient'altro che potrebbe essere in esecuzione, e non conta anche il tempo di CPU trascorso nel kernel (come per l'I / O dei file).

Il tempo della CPU misura il tempo totale impiegato dalla CPU per eseguire il codice o qualsiasi altra cosa richiesta dal codice. Questo include il tempo del kernel.

La misurazione "Tempo utente" è probabilmente la più appropriata per misurare le prestazioni di diversi lavori, poiché sarà meno influenzata da altre cose che accadono sul sistema.


3

Da Wikipedia:

Il termine "tempo CPU utente" può inizialmente essere un po 'fuorviante. Per essere chiari il tempo totale (tempo reale della CPU), è la combinazione del tempo che la CPU impiega eseguendo alcune azioni per un programma e il tempo che la CPU impiega per eseguire le chiamate di sistema per il kernel per conto del programma. Quando un programma scorre in un array, sta accumulando il tempo della CPU dell'utente. Al contrario, quando un programma esegue una chiamata di sistema come exec o fork, accumula tempo di CPU del sistema

Il tempo dell'orologio a parete è il tempo effettivo impiegato da un computer per completare un'attività. È la somma di tre termini: tempo CPU, tempo I / O e ritardo canale di comunicazione (ad es. Se i dati sono sparsi su più macchine). A differenza del tempo della CPU, che misura solo il tempo durante il quale il processore sta attivamente lavorando su una determinata attività, il tempo di wall misura il tempo totale per il completamento del processo. La differenza tra i due consiste nel tempo che passa a causa di ritardi programmati o in attesa della disponibilità delle risorse.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.