Nasza grupa robocza tworzy aplikację komputerową, która symuluje wydajność energetyczną budynku. Jest to aplikacja .NET, a gdy użytkownik uruchamia wiele symulacji, może to zająć dużo czasu. Symulacje są w pełni zrównoleglalne, a my mamy bardzo znaczące zasoby obliczeniowe HPC w „biurze”.
Jednym z naszych pomysłów jest umożliwienie użytkownikom odciążenia symulacji, o których wiemy, że będą działać bardzo długo (podczas gdy każda indywidualna symulacja trwa około 30-120 sekund, uruchomienie dużej liczby symulacji może potrwać kilka dni). Czy ktoś już to zrobił? Jeśli tak, czy korzystałeś z bibliotek, aby ułatwić sobie pracę? Czy było warto?
edytowane w celu dodania:
Poszczególne zadania do odciążenia symulacji byłyby
- pakowanie pliku (około 5 Mb),
- przesyłanie go na nasze serwery,
- rozkładanie pakietu na poszczególne symulacje (każda zajmuje około 30-120 sekund i jest całkowicie równoległa), liczba symulacji jest funkcją liczby opcji wybranych przez użytkownika (izolacja, orientacja budynku itp.) i najgorszego przypadku wyboru każda możliwa opcja spowodowałaby około 1E50 symulacji. Przeprowadzanie symulacji od 100 do ~ 1E5 nie jest nieznane, ale większość użytkowników uruchomi mniej niż 10.
- składanie ukończonych symulacji i pobieranie teraz znacznie większego pliku.
Nie jesteśmy pewni, jakiego interfejsu użyć, ponieważ nasza grupa jest w tym nowa, a dzięki cięciom budżetowym może on zostać ukończony na czas, ale musi być łatwy do utrzymania dla następnych (jeśli w ogóle) osób.
Ta aplikacja korzysta już z platformy .NET 4 i może się rozwijać, aby używać wszystkich rdzeni użytkownika (nasze maszyny programistyczne mają 8 rdzeni).