Heterogeniczne obliczenia równoległe i rozproszone w Javie

  • Kierownik projektu: prof. dr hab. Piotr Bała, Interdyscyplinarne Centrum Modelowania Matematycznego i Komputerowego Uniwersytetu Warszawskiego
  • Partnerzy: dr Costas Bekas, IBM Research LAB, Szwajcaria; prof. Dmitrios Nikolopoulos, Queen’s Univeristy of Belfast, Wielka Brytania; dr Buğra Gedik, Bilkent Üniveristesi, Turcja
  • Tytuł projektu: Heterogeniczne obliczenia równoległe i rozproszone w Javie
  • Konkurs: CHIST-ERA Heterogeneous Distributed Computing
Piotr Bała oraz czterech członków jego zespołu badawczego: trzech mężczyzn i jedna kobieta

1 października 2014 r. w Interdyscyplinarnym Centrum Modelowania Matematycznego i Komputerowego Uniwersytetu Warszawskiego (ICM UW) rozpoczęła się realizacja projektu, który pomoże zrewolucjonizować podejście do programowania poprzez umożliwienie łatwiejszego tworzenia aplikacji równoległych i rozproszonych z wykorzystaniem języka Java, najbardziej rozpowszechnionego języka programowania.

Współczesne komputery, zarówno te największe, jak i te stosowane powszechnie w biurach czy w domach staja się coraz bardziej skomplikowane. Zbudowane są z kilku, kilkunastu czy wręcz kilkuset tysięcy procesorów, które, żeby osiągnąć niezbędną wydajność, muszą składać się z wielu jednostek obliczeniowych (korów). Procesory wielokorowe nie są niczym nowym, spotykamy się z nimi na co dzień – w telefonach komórkowych, kartach graficznych czy konsolach do gier. Tworzenie aplikacji na tak złożone systemy staje się coraz większym wyzwaniem, a tradycyjne metody programowania są coraz mniej efektywne i coraz trudniejsze do zastosowania.

Podstawowe problemy, z jakimi muszą zmierzyć się programiści, to duża liczba jednostek obliczeniowych (równoległość) oraz konieczność jednoczesnego wykorzystywania różnych typów procesorów (heterogeniczność). Procesory zainstalowane w jednym systemie mogą też pochodzić od różnych producentów i posiadać odmienną architekturę.

Granice zwiększania wydajności pojedynczych procesorów zostały już osiągnięte i dalsze przyspieszanie pracy komputerów wymaga stosowania układów wieloprocesorowych i wielokorowych. Obecnie do przetwarzania dużych zbiorów danych wykorzystywane są aplikacje tworzone w języku Java, jednak, pomimo wielu prób, nie udało się jeszcze stworzyć efektywnych narzędzi pozwalających na tworzenie aplikacji wykorzystujących jednocześnie setki czy tysiące procesorów. Wyzwanie to podejmuje projekt Heterogenous Parallel and Distributed Computing in Java (HPDCJ). Celem naszych badań jest zastosowanie języka Java w obliczeniach rozproszonych i równoległych na architekturach heterogenicznych. W ramach projektu zostanie zademonstrowana możliwość tworzenia aplikacji równoległych w Javie na przykładzie starannie wybranego zbioru problemów i aplikacji. W szczególności wykorzystane zostaną kluczowe aplikacje z obszaru wielkich danych (Big Data) oraz aplikacje, które mogą być wykorzystywane jednocześnie przez wielu użytkowników.

Rezultaty projektu pozwolą na wzmocnienie europejskiego środowiska naukowego i przemysłowego wykorzystującego obliczenia wielkoskalowe. Stworzone rozwiązania umożliwią wykorzystanie możliwości systemów wieloprocesorowych przez szersze niż dotąd grupy użytkowników.


prof. dr hab. Piotr Bała

Pracuje w Centrum Modelowania Matematycznego i Komputerowego na Uniwersytecie Warszawskim. Jego zainteresowania badawcze koncentrują się na obliczeniach równoległych i rozproszonych, obejmują również dynamikę molekularną i kwantową, a także klasyczną kwantową dynamikę molekularną. Biblioteka PCJ (Paralel Computing in Java), której celem jest upowszechnienie języka Java, stworzona przez zespół prof. Bały otrzymała w 2014 nagrodę HPC Challenge Best Productivity Award na konferencji Supercomputing Conference.

 

Data publikacji: 28.10.2015