Creazione di thread all'interno del cluster
-
08-07-2019 - |
Domanda
Vorrei sapere che esiste un modo per creare i thread su altri nodi senza avviare il processo sui nodi. Ad esempio: - diciamo che ho un cluster di 5 nodi che sto eseguendo un'applicazione su node1. Il che crea 5 thread su Voglio che i thread non vengano creati nello stesso sistema ma attraverso il cluster diciamo 1 nodo 1 tipo di thread. Esiste un modo per fare ciò o dipende maggiormente da Load Scheduler e openMP fa qualcosa del genere?
se c'è qualche ambiguità nella domanda, per favore fatemi sapere che lo chiarirò.
Soluzione
Risposta breve - non semplicemente. I thread condividono lo spazio degli indirizzi di un processo, quindi è estremamente difficile trasferirli tra i nodi del cluster. E, se è possibile (esistono sistemi che supportano questo), inducendoli a mantenere uno stato coerente introduce molta overhead di sincronizzazione e comunicazione che influisce sulle prestazioni.
In breve, se si sta distribuendo un'applicazione su un cluster, attenersi a più processi e scegliere un meccanismo di comunicazione adatto.
Altri suggerimenti
generalmente, lascia i thread su VM o Engine per evitare blocchi molto inerti, focalizza l'app o il trasporto, se uno, crea il tempo (200 hz = 5ms euristici), se 2, ridipingi, buon modello: eventdrive