Eseguire Simulazioni FDS su Server Windows in un Datacenter: Guida Completa

Fire Safety Engineering in ITALIA

Eseguire Simulazioni FDS su Server Windows in un Datacenter: Guida Completa

In questo articolo approfondiamo come utilizzare Fire Dynamics Simulator (FDS) su server remoti Windows. In FSE Italia utilizziamo spesso questi servizi per poter fare dei calcoli sulle simulazioni di fluido dinamica, calcoli che possono durare anche diversi giorni in alcuni casi.

Vi guideremo attraverso i passaggi necessari per lanciare simulazioni FDS in parallelo su macchine potenti e sfruttare appieno le capacità di automazione e monitoraggio tramite Python. Sia che stiate gestendo un piccolo datacenter in locale o in remoto o un ambiente più complesso, questa guida vi permetterà di ottimizzare i vostri processi di simulazione in modo efficiente e scalabile.

Accesso e Configurazione del Server Remoto

Come si può sfruttare un server remoto Windows per eseguire simulazioni complesse di FDS?

Il primo passo fondamentale è accedere al server remoto con le corrette credenziali di amministratore. Per farlo, si utilizza Connessione Desktop Remoto (RDP), uno strumento integrato in Windows che permette di controllare server remoti attraverso il proprio PC.

Per accedere:

1. Aprire Connessione Desktop Remoto dal menu Start.

2. Inserire l’indirizzo IP o il nome host del server a cui si vuole connettere.

3. Inserire le credenziali amministrative (utente e password) per ottenere l’accesso completo al sistema.

Una volta collegati, il prossimo passo è preparare il sistema per eseguire FDS, assicurandosi che il software sia installato e configurato correttamente.

Installazione di FDS: Dettagli Tecnici

FDS, sviluppato dal NIST (National Institute of Standards and Technology), è un software estremamente potente per simulazioni di incendi e dinamica dei fumi. Prima di tutto, dobbiamo scaricare e installare FDS sul server. Il pacchetto più recente può essere scaricato direttamente dal sito ufficiale: Download FDS (https://pages.nist.gov/fds-smv/downloads.html).

Procedura di Installazione:

1. Scaricare il file di installazione di FDS dal link sopra riportato.

2. Eseguire l’installer sul server, seguendo le istruzioni a schermo.

3. Importante: Durante l’installazione, assicurarsi di memorizzare il percorso di installazione, tipicamente `C:\Program Files\firemodels\FDS6\bin`.

Configurazione delle Variabili di Ambiente: Step-by-Step

Dopo aver installato FDS, è necessario configurare il PATH di sistema, una variabile di ambiente che permette al sistema operativo di trovare l’eseguibile `fds.exe` senza specificare manualmente il percorso ogni volta.

Procedura per aggiungere FDS al PATH:

1. Cliccare con il tasto destro su Questo PC e selezionare Proprietà.

2. Selezionare Impostazioni di sistema avanzate.

3. Andare alla scheda Avanzate e cliccare su Variabili d’ambiente.

4. Nella sezione Variabili di sistema, scorrere fino a trovare la variabile `Path`, selezionarla e cliccare su Modifica.

5. Cliccare su Nuovo e aggiungere il percorso: 

      C:\Program Files\firemodels\FDS6\bin

6. Confermare le modifiche e chiudere tutte le finestre.

Questa operazione permette al server di riconoscere il comando `fds.exe` da qualsiasi cartella, rendendo più agevole l’esecuzione delle simulazioni.

Esecuzione di Simulazioni FDS in Modalità Sequenziale

Con FDS correttamente installato e configurato, possiamo procedere con l’esecuzione di una simulazione. Il comando base per lanciare FDS da linea di comando è:

fds.exe [percorso_file_simulazione.fds]


In questo caso, il file `.fds` contiene tutte le specifiche della simulazione: geometria, materiali, fonti di calore, MESH, e altri parametri fisici. È fondamentale che questo file sia preparato correttamente, poiché FDS utilizzerà queste informazioni per condurre la simulazione.

Parallelizzazione della Simulazione: Utilizzo di fds_local.bat

Come si possono ridurre i tempi di calcolo delle simulazioni FDS più complesse?

La risposta è la parallelizzazione. Per sfruttare al massimo la potenza di calcolo del server, possiamo eseguire simulazioni in parallelo, utilizzando il file batch `fds_local.bat`. Questo file, incluso nell’installazione di FDS, facilita il lancio di simulazioni che sfruttano più processori contemporaneamente.

Esempio di comando per parallelizzare FDS:

fds_local.bat -p [numero_core] -o 1 -Y [percorso_file_simulazione.fds]

`-p [numero_core]`: Questo parametro definisce il numero di processori (o core) che FDS utilizzerà. Il numero di core dovrebbe coincidere con il numero di MESH definite nel file `.fds`.

`-o 1`: Questa opzione consente di visualizzare l’output di avanzamento nel terminale.

`-Y`: Crea una sottocartella dedicata agli output, per tenere organizzati i file di log e risultati.

Utilizzando più core, i domini computazionali (MESH) vengono distribuiti su processori differenti, riducendo i tempi di esecuzione in modo significativo, soprattutto per simulazioni di grandi dimensioni.

Monitoraggio della Simulazione con Python

Come possiamo essere avvisati in tempo reale quando una simulazione termina o si verifica un errore?

Per evitare di controllare manualmente lo stato della simulazione, possiamo automatizzare il monitoraggio tramite Python, un linguaggio di programmazione ad alto livello, ci permette di creare script che non solo lanciano la simulazione, ma anche monitorano lo stato del processo e inviano notifiche quando la simulazione termina o se si verificano errori (come un’instabilità numerica).

Abbiamo sviluppato uno script Python, `fds_watching.py`, che automatizza l’intero processo. Questo script:

– Lancia la simulazione FDS.

– Controlla se il processo si blocca o termina correttamente.

– Invia una notifica via e-mail all’utente con l’esito della simulazione.

Passi per l’installazione e l’uso di `fds_watching.py`:

1. Installare Python sul server (scaricabile da python.org https://www.python.org/downloads/).

2. Scaricare lo script dal repository GitHub: fds_watching.py https://github.com/fse-italia-srl/fds_watching.git).

3. Modificare il file di configurazione `config.ini` per inserire i dettagli come l’indirizzo e-mail dell’utente.

4. Avvia lo script:

python fds_watching.py

Lo script gestisce automaticamente la simulazione e ci avvisa quando il calcolo è completato, rendendo tutto più semplice e meno dispendioso in termini di tempo.

Possibile Adattamento su Sistemi Linux

Sebbene questo articolo si concentri sui server Windows, molti dei principi descritti sono facilmente adattabili a sistemi Linux. Python è multipiattaforma, e basterà modificare i comandi di lancio per adattarli all’ambiente Linux. Ad esempio, su Linux si può utilizzare `mpirun` per eseguire simulazioni FDS in parallelo:

“`bash

mpirun -np [numero_core] fds [file_simulazione.fds]

“`

Conclusione

In questo articolo abbiamo esplorato come configurare un server Windows per eseguire simulazioni FDS, come utilizzare il parallelismo per ottimizzare i tempi di calcolo, e come monitorare automaticamente le simulazioni con uno script Python.

Nel prossimo articolo, faremo un passo avanti: vedremo un esempio pratico dell’uso dello script Python `fds_watching.py`.

Rimanete sintonizzati per ulteriori dettagli su come ottimizzare e interpretare le simulazioni di FDS in un contesto operativo complesso.