Il nostro gruppo di lavoro produce un'applicazione desktop che simula la prestazione energetica dell'edificio. È un'applicazione .NET e quando l'utente esegue molte simulazioni, può richiedere molto tempo. Le simulazioni sono totalmente parallelizzabili e disponiamo di risorse di calcolo HPC molto significative in "ufficio".
Un'idea che abbiamo avuto è quella di consentire agli utenti di scaricare simulazioni che sappiamo dureranno molto a lungo (mentre ogni singola simulazione dura circa 30-120 secondi, l'esecuzione di un gran numero di simulazioni potrebbe richiedere diversi giorni). Qualcuno l'ha già fatto? In tal caso, hai utilizzato delle librerie per semplificare il lavoro? Ne è valsa la pena?
modificato per aggiungere:
Le singole attività per lo scarico della simulazione sarebbero
- impacchettare un file (circa 5 Mb),
- caricandolo sui nostri server,
- scomporre il pacchetto in singole simulazioni (ciascuna richiede circa 30-120 secondi ed è totalmente parallelizzabile), il numero di simulazioni è una funzione del numero di opzioni selezionate dall'utente (isolamento, orientamento dell'edificio, ecc.) e il caso peggiore di selezione ogni possibile opzione si tradurrebbe in circa 1E50 simulazioni. L'esecuzione di simulazioni da 100 a ~ 1E5 non è sconosciuta, ma la maggior parte degli utenti eseguirà meno di 10.
- riassemblando le simulazioni completate e scaricando il file ora molto più grande.
Non siamo sicuri di quale interfaccia utilizzare, dato che il nostro gruppo è nuovo in questo, e con tagli di budget, potrebbe essere completato in tempo, ma deve essere facile da mantenere per le persone successive (se presenti).
Questa app utilizza già .NET 4 e può espandersi per utilizzare tutti i core che l'utente ha (le nostre macchine di sviluppo hanno 8 core).