{"id":431,"date":"2024-09-10T11:32:33","date_gmt":"2024-09-10T11:32:33","guid":{"rendered":"https:\/\/www.fseitalia.it\/blog\/?p=431"},"modified":"2024-09-10T11:34:37","modified_gmt":"2024-09-10T11:34:37","slug":"eseguire-simulazioni-fds-su-server-windows-in-un-datacenter-guida-completa","status":"publish","type":"post","link":"https:\/\/www.fseitalia.it\/blog\/index.php\/2024\/09\/10\/eseguire-simulazioni-fds-su-server-windows-in-un-datacenter-guida-completa\/","title":{"rendered":"Eseguire Simulazioni FDS su Server Windows in un Datacenter: Guida Completa"},"content":{"rendered":"\n<p><em>In questo articolo<\/em> approfondiamo come utilizzare <strong>Fire Dynamics Simulator<\/strong> (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.<\/p>\n\n\n\n<p>Vi guideremo attraverso i passaggi necessari per lanciare simulazioni FDS in parallelo su macchine potenti e sfruttare appieno le capacit\u00e0 di automazione e monitoraggio tramite Python. Sia che stiate gestendo un piccolo datacenter in locale o in remoto o un ambiente pi\u00f9 complesso, questa guida vi permetter\u00e0 di ottimizzare i vostri processi di simulazione in modo efficiente e scalabile.<\/p>\n\n\n\n<p style=\"font-size:30px\"><strong>Accesso e Configurazione del Server Remoto<\/strong><\/p>\n\n\n\n<p><em>Come si pu\u00f2 sfruttare un server remoto Windows per eseguire simulazioni complesse di FDS?<\/em><\/p>\n\n\n\n<p>Il primo passo fondamentale \u00e8 accedere al server remoto con le corrette credenziali di amministratore. Per farlo, si utilizza <strong>Connessione Desktop Remoto<\/strong> (RDP), uno strumento integrato in Windows che permette di controllare server remoti attraverso il proprio PC.<\/p>\n\n\n\n<p>Per accedere:<\/p>\n\n\n\n<p>1. Aprire<strong> Connessione Desktop Remoto<\/strong> dal menu Start.<\/p>\n\n\n\n<p>2. Inserire <strong>l&#8217;indirizzo IP<\/strong> o il <strong>nome host<\/strong> del server a cui si vuole connettere.<\/p>\n\n\n\n<p>3. Inserire le <strong>credenziali amministrative<\/strong> (utente e password) per ottenere l&#8217;accesso completo al sistema.<\/p>\n\n\n\n<p>Una volta collegati, il prossimo passo \u00e8 preparare il sistema per eseguire <strong>FDS<\/strong>, assicurandosi che il software sia installato e configurato correttamente.<\/p>\n\n\n\n<p style=\"font-size:30px\"><strong>Installazione di FDS: Dettagli Tecnici<\/strong><\/p>\n\n\n\n<p>FDS, sviluppato dal <em>NIST<\/em> (<strong>National Institute of Standards and Technology<\/strong>), \u00e8 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\u00f9 recente pu\u00f2 essere scaricato direttamente dal sito ufficiale: Download FDS (<a href=\"https:\/\/pages.nist.gov\/fds-smv\/downloads.html\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/pages.nist.gov\/fds-smv\/downloads.html<\/a>).<\/p>\n\n\n\n<p>Procedura di Installazione:<\/p>\n\n\n\n<p>1. Scaricare il file di installazione di FDS dal link sopra riportato.<\/p>\n\n\n\n<p>2. Eseguire l&#8217;installer sul server, seguendo le istruzioni a schermo.<\/p>\n\n\n\n<p>3. <strong>Importante<\/strong>: Durante l&#8217;installazione, assicurarsi di memorizzare il percorso di installazione, tipicamente `<em><strong>C:\\Program Files\\firemodels\\FDS6\\bin<\/strong><\/em>`.<\/p>\n\n\n\n<p style=\"font-size:30px\"><strong>Configurazione delle Variabili di Ambiente: Step-by-Step<\/strong><\/p>\n\n\n\n<p>Dopo aver installato FDS, \u00e8 necessario configurare il <strong>PATH<\/strong> di sistema, una variabile di ambiente che permette al sistema operativo di trovare l\u2019eseguibile `fds.exe` senza specificare manualmente il percorso ogni volta.<\/p>\n\n\n\n<p>Procedura per aggiungere FDS al PATH:<\/p>\n\n\n\n<p>1. Cliccare con il tasto destro su <strong>Questo PC<\/strong> e selezionare <strong>Propriet\u00e0<\/strong>.<\/p>\n\n\n\n<p>2. Selezionare <strong>Impostazioni di sistema avanzate<\/strong>.<\/p>\n\n\n\n<p>3. Andare alla scheda <strong>Avanzate<\/strong> e cliccare su <strong>Variabili d&#8217;ambiente<\/strong>.<\/p>\n\n\n\n<p>4. Nella sezione <strong>Variabili di sistema<\/strong>, scorrere fino a trovare la variabile `<strong>Path<\/strong>`, selezionarla e cliccare su <strong>Modifica<\/strong>.<\/p>\n\n\n\n<p>5. Cliccare su <strong>Nuovo<\/strong> e aggiungere il percorso:\u00a0<\/p>\n\n\n\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<strong><em>C:\\Program Files\\firemodels\\FDS6\\bin<\/em><\/strong><\/p>\n\n\n\n<p>6. Confermare le modifiche e chiudere tutte le finestre.<\/p>\n\n\n\n<p>Questa operazione permette al server di riconoscere il comando `fds.exe` da qualsiasi cartella, rendendo pi\u00f9 agevole l\u2019esecuzione delle simulazioni.<\/p>\n\n\n\n<p style=\"font-size:30px\"><strong>Esecuzione di Simulazioni FDS in Modalit\u00e0 Sequenziale<\/strong><\/p>\n\n\n\n<p>Con FDS correttamente installato e configurato, possiamo procedere con l&#8217;esecuzione di una simulazione. Il comando base per lanciare FDS da linea di comando \u00e8:<\/p>\n\n\n\n<p><strong><em>fds.exe [percorso_file_simulazione.fds]<\/em><\/strong><\/p>\n\n\n\n<p><br>In questo caso, il <strong>file `.fds`<\/strong> contiene tutte le specifiche della simulazione: geometria, materiali, fonti di calore, MESH, e altri parametri fisici. \u00c8 fondamentale che questo file sia preparato correttamente, poich\u00e9 FDS utilizzer\u00e0 queste informazioni per condurre la simulazione.<\/p>\n\n\n\n<p style=\"font-size:30px\"><strong>Parallelizzazione della Simulazione: Utilizzo di fds_local.bat<\/strong><\/p>\n\n\n\n<p><strong>Come si possono ridurre i tempi di calcolo delle simulazioni FDS pi\u00f9 complesse?<\/strong><\/p>\n\n\n\n<p>La risposta \u00e8 la <strong>parallelizzazione<\/strong>. Per sfruttare al massimo la potenza di calcolo del server, possiamo eseguire simulazioni in parallelo, utilizzando il file batch `<strong>fds_local.bat<\/strong>`. Questo file, incluso nell&#8217;installazione di FDS, facilita il lancio di simulazioni che sfruttano pi\u00f9 processori contemporaneamente.<\/p>\n\n\n\n<p>Esempio di comando per parallelizzare FDS:<\/p>\n\n\n\n<p><strong><em>fds_local.bat -p [numero_core] -o 1 -Y [percorso_file_simulazione.fds]<\/em><\/strong><\/p>\n\n\n\n<p>&#8211; <strong>`-p [numero_core]`<\/strong>: Questo parametro definisce il numero di processori (o core) che FDS utilizzer\u00e0. Il numero di core dovrebbe coincidere con il numero di MESH definite nel file `.fds`.<\/p>\n\n\n\n<p>&#8211; <strong>`-o 1`<\/strong>: Questa opzione consente di visualizzare l\u2019output di avanzamento nel terminale.<\/p>\n\n\n\n<p>&#8211; <strong>`-Y`<\/strong>: Crea una sottocartella dedicata agli output, per tenere organizzati i file di log e risultati.<\/p>\n\n\n\n<p>Utilizzando pi\u00f9 core, i domini computazionali (MESH) vengono distribuiti su processori differenti, riducendo i tempi di esecuzione in modo significativo, soprattutto per simulazioni di grandi dimensioni.<\/p>\n\n\n\n<p style=\"font-size:30px\"><strong>Monitoraggio della Simulazione con Python<\/strong><\/p>\n\n\n\n<p><strong>Come possiamo essere avvisati in tempo reale quando una simulazione termina o si verifica un errore?<\/strong><\/p>\n\n\n\n<p>Per evitare di controllare manualmente lo stato della simulazione, possiamo automatizzare il monitoraggio tramite <strong>Python<\/strong>, 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&#8217;instabilit\u00e0 numerica).<\/p>\n\n\n\n<p>Abbiamo sviluppato uno script Python, <strong>`fds_watching.py`<\/strong>, che automatizza l&#8217;intero processo. Questo script:<\/p>\n\n\n\n<p>&#8211; Lancia la simulazione FDS.<\/p>\n\n\n\n<p>&#8211; Controlla se il processo si blocca o termina correttamente.<\/p>\n\n\n\n<p>&#8211; Invia una notifica via <strong>e-mail<\/strong> all&#8217;utente con l\u2019esito della simulazione.<\/p>\n\n\n\n<p>Passi per l\u2019installazione e l\u2019uso di `fds_watching.py`:<\/p>\n\n\n\n<p>1. Installare <strong>Python<\/strong> sul server (scaricabile da python.org <a href=\"https:\/\/www.python.org\/downloads\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.python.org\/downloads\/<\/a>).<\/p>\n\n\n\n<p>2. Scaricare lo script dal repository GitHub: fds_watching.py <a href=\"https:\/\/github.com\/fse-italia-srl\/fds_watching.git\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/github.com\/fse-italia-srl\/fds_watching.git<\/a>).<\/p>\n\n\n\n<p>3. Modificare il file di configurazione `<em><strong>config.ini<\/strong><\/em>` per inserire i dettagli come l&#8217;indirizzo e-mail dell&#8217;utente.<\/p>\n\n\n\n<p>4. Avvia lo script:<\/p>\n\n\n\n<p><strong><em>python fds_watching.py<\/em><\/strong><\/p>\n\n\n\n<p>Lo script gestisce automaticamente la simulazione e ci avvisa quando il calcolo \u00e8 completato, rendendo tutto pi\u00f9 semplice e meno dispendioso in termini di tempo.<\/p>\n\n\n\n<p style=\"font-size:30px\"><strong>Possibile Adattamento su Sistemi Linux<\/strong><\/p>\n\n\n\n<p>Sebbene questo articolo si concentri sui server Windows, molti dei principi descritti sono facilmente adattabili a sistemi <strong>Linux<\/strong>. Python \u00e8 multipiattaforma, e baster\u00e0 modificare i comandi di lancio per adattarli all\u2019ambiente Linux. Ad esempio, su Linux si pu\u00f2 utilizzare `mpirun` per eseguire simulazioni FDS in parallelo:<\/p>\n\n\n\n<p>&#8220;`bash<\/p>\n\n\n\n<p><strong><em>mpirun -np [numero_core] fds [file_simulazione.fds]<\/em><\/strong><\/p>\n\n\n\n<p>&#8220;`<\/p>\n\n\n\n<p style=\"font-size:30px\"><strong>Conclusione<\/strong><\/p>\n\n\n\n<p>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.<\/p>\n\n\n\n<p><strong>Nel prossimo articolo, faremo un passo avanti<\/strong>: vedremo un <strong>esempio pratico<\/strong> dell&#8217;uso dello script Python `<strong>fds_watching.py<\/strong>`.<\/p>\n\n\n\n<p>Rimanete sintonizzati per ulteriori dettagli su come ottimizzare e interpretare le simulazioni di FDS in un contesto operativo complesso.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>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&hellip; <br \/> <a class=\"read-more\" href=\"https:\/\/www.fseitalia.it\/blog\/index.php\/2024\/09\/10\/eseguire-simulazioni-fds-su-server-windows-in-un-datacenter-guida-completa\/\">Leggi tutto<\/a><\/p>\n","protected":false},"author":1,"featured_media":432,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-431","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technical-rules"],"_links":{"self":[{"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/posts\/431","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=431"}],"version-history":[{"count":3,"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/posts\/431\/revisions"}],"predecessor-version":[{"id":435,"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/posts\/431\/revisions\/435"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/media\/432"}],"wp:attachment":[{"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=431"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=431"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fseitalia.it\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=431"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}