Centrum Astronomii
Wydział Fizyki, Astronomii i Informatyki Stosowanej, Uniwersytet Mikołaja Kopernika

Mechanic

Sieć Arnolda, 18.3MPX

Mechanic jest zaawansowanym środowiskiem numerycznym, którego głównym zadaniem jest pomoc w prowadzeniu długotrwałych symulacji numerycznych na klastrach obliczeniowych. Kod oparty jest o technologię MPI (Message Passing Interface), a komunikacja międzyprocesorowa odbywa się w ramach tzw. farmy. Struktura kodu pozwala na całkowitą separację warstwy konfiguracji, komunikacji i zapisu danych (tzw. rdzeń) od właściwego zagadnienia numerycznego (moduł numeryczny). Oprogramowanie dostarcza bogate API (Application Programming Interface), dzięki któremu użytkownik może łatwo zaimplementować problemy numeryczne. W odróżnieniu od istniejących kodów z rodziny tzw. task management systems (np. Condor, Workqueue), Mechanic stara się ujednolicić warstwę komunikacji, konfiguracji i zapisu danych.

Kod napisany jest w języku C i dostępny na licencji BSD.

Do głównych zalet kodu należą:

  • Sepracja warstwy konfiguracji i komunikacji oraz zapisu danych
  • Przejrzyste API
  • Automatyczne tworzenie kopii zapasowych w trakcie symulacji
  • Nie blokująca komunikacja międzyprocesorowa
  • Zapis danych w otwartym formacie HDF5
Zaangażowane osoby