Logowanie do System sprawozdań KDM

Model aktorów jako paradygmat programowania równoległego

Kierownik projektu: Michał Zielonka

Politechnika Gdańska

Wydział Elektroniki, Telekomunikacji i Informatyki

Gdańsk

Streszczenie projektu

Zagadnieniem poruszanym w ramach tej pracy naukowo-badawczej jest rozpoznanie możliwości praktycznego zastosowania programowania reaktywnego opartego o model aktorów w aplikacjach równoległych.

Projekt ma na celu zbadanie wydajności aplikacji stworzonej w środowisku .NET, do której zrównoleglenia wykorzystany został model aktorów. Wzorzec aktorów jest modelem budowania aplikacji wielowątkowych. Powstał w celu ułatwienia synchronizacji między róznymi wątkami. Aktorzy to obiekty, które mają kilka ograniczeń: są całkowicie hermetyczne i komunikują się ze światem zewnętrznym tylko za pomocą komunikatów. W zamian są zawsze całkowicie współbieżne bez konieczności używania zamków i innych mechanizmów synchronizacji.

Do oceny wydajności takiego rozwiązania przygotowana zostanie analiza porównawcza wersji aplikacji wykorzystującej standardowe mechanizmy udostępniane jako TPL w platformie .NET z wersją wykorzystującą środowisko AKKA .NET. Jednym z założeń jest aby wykorzystać jak najefektywniej dostępne rdzenie, w celu optymalizacji czasu wykonania aplikacji i ocena danego rozwiązania.

Zadaniami do wykonania są:

1. Analiza rozwiązań programistycznych polegających na zastosowaniu modelu aktorów.

2. Realizacja postulatów programowania reaktywnego na platformie .NET w formie mikroserwisów.

3. Porównanie stosowania modelu aktorów z innymi podejściami do programowania równoległego.

W ramach projektu przygotowana została między innymi wersja aplikacji bazująca na wykorzystaniu środowiska AKKA .NET. Cała aplikacja została napisana z wykorzystaniem .NET Core 2.0 (zadziała więc na każdym systemie Linux wspierającym daną platformę) oraz wykorzystuje połączenie z bazą danych MS SQL. Elementem badawczym potrzebnym do realizacji zadania jest sprawdzenie powyższego rozwiązania na maszynie wielordzeniowej i pomiar jej wydajności. Do tej pory testy wykonano na maszynie wyposażonej w czterordzeniowy procesor generacji Core i7. Do wykonania dalszych pomiarów potrzebny jest węzeł wyposażony w większą liczbę rdzeni. Ostatnim etapem będzie również weryfikacja rozwiązania na klastrze z przesyłaniem informacji między węzłami.

Publikacje

  1. Michał Zielonka, Jarosław Kuchta, Paweł Czarnul, From sequential to parallel implementation of NLP through the actor model, ISAT 1, (2018) 10
  2. Michał Zielonka, Actors model as a parallel programming paradigm, Politechnika Gdańska 1, (2018) 60

Centrum Informatyczne Trójmiejskiej Akademickiej Sieci Komputerowej
ul. G. Narutowicza 11/12, 80-233 Gdańsk   |   tel. 58-347-24-11
email: office@task.gda.pl   |   NIP: 584-020-35-93