Definizioni
Alcune definizioni ricorrenti nell’ambito del calcolo distribuito.
- job e task
- Nell’informatica, un job è un’unità di lavoro o unità di esecuzione
(che esegue detto job). Un componente di un job (come unità di lavoro)
è chiamato task o step (se sequenziale). Come unità di esecuzione, un
job può essere concretamente identificato con un singolo processo, che può
a sua volta avere sottoprocessi (processi figli; il processo corrispondente al
job essendo il processo genitore) che eseguono i compiti o i passaggi che
compongono il lavoro del job; o con un gruppo di processi; o con un
riferimento astratto a un processo o a un gruppo di processi.
- Gestore di code
- Un sotware che si occupa di assegnare agli utenti un accesso esclusivo e/o
non esclusivo alle risorse (nodi informatici) per un certo periodo di tempo in
modo che possano eseguire i job. Fornisce una struttura per l’avvio,
l’esecuzione e il monitoraggio dei job.
- Modulo
- I
modulefile
sono file scritti in Tool Command Language, TCL, e sono
interpretati dal programma module
tramite l’interfaccia utente del modulo.
I file dei moduli possono essere caricati (load
), scaricati (unload
) o
commutati al volo (switch
) mentre l’utente sta lavorando; e possono essere
utilizzati per implementare le politiche del cluster relative all’accesso e
all’utilizzo delle applicazioni.
- Scalabilità forte (strong scaling)
- Il numero di processori aumenta mentre la dimensione del problema rimane costante. Ciò si traduce anche in un carico di lavoro ridotto per processore.
- Scalabilità debole (weak scaling)
- In caso di scalabilità debole, aumentano sia il numero di processori che la dimensione del problema. Ciò si traduce anche in un carico di lavoro costante per processore.