Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i...

32

Transcript of Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i...

Page 1: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych
Page 2: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Spis tresci

1 Dane osobowe 2

2 Posiadane dyplomy i stopnie naukowe 2

3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych 2

4 Wskazanie osiagniecia wynikajacego z art. 16 ust. 2 ustawy z dnia 14 marca 2003 r.o stopniach naukowych i tytule naukowym oraz o stopniach i tytule w zakresiesztuki (Dz. U. 2016 r. poz. 882 ze zm. w Dz. U. z 2016 r. poz. 1311.) 24.1 Tytuł osiagniecia naukowego . . . . . . . . . . . . . . . . . . . . . . . . . . . 24.2 Cykl publikacji powiazanych tematycznie . . . . . . . . . . . . . . . . . . . . 24.3 Omówienie celu naukowego oraz najwazniejszych wyników . . . . . . . . . . 4

4.3.1 Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44.3.2 Omówienie osiagniec naukowych . . . . . . . . . . . . . . . . . . . . 64.3.3 Podsumowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

5 Omówienie pozostałych osiagniec naukowo-badawczych 275.1 Omówienie realizowanych projektów o charakterze naukowym . . . . . . . . . 275.2 Współpraca z partnerami naukowymi i przemysłowymi . . . . . . . . . . . . . 285.3 Opieka naukowa nad doktorantem . . . . . . . . . . . . . . . . . . . . . . . . 29

6 Wskazniki aktywnosci badawczej i publikacyjnej 30

Page 3: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

1 Dane osobowe

Imie i Nazwisko: Łukasz Szustak

Miejsce i data urodzenia: Myszków, 12.12.1983 r.

Stan cywilny: zonaty, jedno dziecko, córka Julia, ur. 2016 r.

E-mail: [email protected]

2 Posiadane dyplomy i stopnie naukowe

• Dyplom doktora nauk technicznych, dyscyplina Informatyka, Politechnika Czestochow-ska, Wydział Inzynierii Mechanicznej i Informatyki, 2012, tytuł rozprawy: Metody zrów-noleglenia i równowazenia obciazenia architektur hybrydowych w obliczeniach nume-rycznych

• Dyplom magistra inzyniera, kierunek Informatyka, specjalnosc: Inzynieria oprogramo-wania i systemy informatyczne, Politechnika Czestochowska, Wydział Inzynierii Mecha-nicznej i Informatyki, 2008. Tytuł pracy magisterskiej: Obliczenia równoległe na klastrzeopartym na procesorze Cell/B.E.

3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

• Adiunkt, Politechnika Czestochowska, Wydział Inzynierii Mechanicznej i Informatyki,Instytut Informatyki Teoretycznej i Stosowanej: 2012 – obecnie

4 Wskazanie osiagniecia wynikajacego z art. 16 ust. 2 ustawy z dnia 14marca 2003 r. o stopniach naukowych i tytule naukowym oraz o stop-niach i tytule w zakresie sztuki (Dz. U. 2016 r. poz. 882 ze zm. w Dz. U.z 2016 r. poz. 1311.)

4.1 Tytuł osiagniecia naukowegoMetody i algorytmy zrównoleglania i dystrybucji obliczen w architekturachwielo- i masywnie wielordzeniowych

4.2 Cykl publikacji powiazanych tematycznieObjasnienie oznaczen:

• WoS – publikacja zarejestrowana w bazie Web of Science,

• IF5Y – 5-letni wskaznik oddziaływania (Impact Factor) wg bazy JCR (zgodny z rokiemopublikowania),

• Qi – kwartyl czasopisma wg bazy JCR (zgodny z rokiem opublikowania),

• PM – liczba punktów ministerialnych,

• U – procentowy udział w badaniach oraz przygotowaniu artykułu.

2

Page 4: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Jako osiagniecie wskazuje jednotematyczny cykl 9 publikacji, który obejmuje:

[A1] L. Szustak, K. Rojek, P. Gepner, Using Intel Xeon Phi Coprocessor to Accelerate Com-putations in MPDATA Algorithm, In Proc. 10th Int. Conf. on Parallel Processing andApplied Mathematics - PPAM 2013, vol. 8385, 582–592, LNCS, Springer, 2014,WoS, PM=15, U=80%

[A2] R. Wyrzykowski, L. Szustak, and K. Rojek. Parallelization of 2D MPDATA EULAG Al-gorithm on Hybrid Architectures with GPU accelerators, Parallel Computing, 40 (8):425–447, 2014,IF5Y =1.781, Q1, WoS, PM=35, U=45%

[A3] L. Szustak, K. Rojek, T. Olas, L. Kuczynski, K. Halbiniak, and P. Gepner, Adaptation ofMPDATA Heterogeneous Stencil Computation to Intel Xeon Phi Coprocessor, ScientificProgramming, 14 pages, 2015,IF5Y =0.756, Q4, WoS, PM=15, U=50%

[M1] K. Rojek, L. Szustak, and R. Wyrzykowski, Zrównoleglanie i automatyczne dostoso-wanie algorytmów numerycznych do architektur hybrydowych z akceleratorami GPU.Warszawa, PWN, 2015 (Nagroda im. Profesora Zdzisława Pawlaka za wybitna monogra-fie z zakresu informatyki przyznana w roku 2016 przez Komitet Informatyki PAN),PM=50, U=45%

[A4] L. Szustak, K. Halbiniak, L. Kuczynski, J. Wrobel, and A. Kulawik, Porting and Opti-mization of Solidification Application for CPU–MIC Hybrid Platforms, The InternationalJournal of High Performance Computing Applications, DOI:10.1177/1094342016677740,17 pages, Article in Press, 2016,IF5Y =2.365, Q2, WoS, PM=25, U=60%

[A5] T. Malik, L. Szustak, R. Wyrzykowski, A. Lastovetsky, Network-Aware Optimization ofMPDATA on Homogeneous Multi-core Clusters with Heterogeneous Network, In Proc.ICA3PP 2016 Collocated Workshops: SCDT, TAPEMS, BigTrust, UCER, DLMCS, Gra-nada, Spain, Dec. 14-16, 2016, vol. 10049, 30–42, LNCS, Springer, 2016,WoS, PM=15, U=40%

[A6] A. Lastovetsky, L. Szustak, and R. Wyrzykowski, Model-based Optimization of EULAGKernel on Intel Xeon Phi Through Load Imbalancing, IEEE Transactions on Parallel andDistributed Systems, 28(3):787–797, 2017,IF5Y =4.3, Q1, WoS, PM=40, U=60%

[A7] L. Szustak, R. Wyrzykowski, and J. Ondrej, Islands-of-Cores Approach for HarnessingSMP/NUMA Architectures in Heterogeneous Stencil Computations, In Proc. ParallelComputing Technologies: 14th International Conference, PaCT 2017, Nizhny Novgorod,Russia, September 4-8, 2017, vol. 10421, 351–364, LNCS, Springer, 2017,U=90%

[A8] L. Szustak, Strategy for Data-Flow Synchronizations in Stencil Parallel Computations onMulti-/Manycore Systems, The Journal of Supercomputing, vol. 74(4), 1534–1546, 2018IF5Y =1.349, Q2, PM=20, U=100%

3

Page 5: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Podsumowanie wskazników bibliometrycznych dla cyklu publikacji wchodzacych w składosiagniecia naukowego:

• Liczba artykułów opublikowanych w czasopismach indeksowanych w bazie JCR: 5 prac

• Liczba wyróznionych monografii: 1 praca

• Liczba publikacji zawartych w materiałach konferencji miedzynarodowych indeksowa-nych w bazie WoS: 2 prace

• Liczba publikacji zawartych w materiałach konferencji miedzynarodowych: 1 praca

• Sumaryczny 5-letni współczynnik wpływu ∑ IF5y = 10,551

• Sumaryczna liczba punktów ministerialnych ∑PM = 215

Artykuły wysłane do recenzji powiazane tematycznie z osiagnieciem naukowym:

[A9] L. Szustak, Performance Portable Parallel Programming of Heterogeneous Stencils acrossShared-Memory Platforms with Intel Processors of Last Generations, The InternationalJournal of High Performance Computing Applications, 18 pages, w trakcie recenzjiIF5Y =2.365, Q2, PM=25, U=100%

[A10] L. Szustak, K. Halbiniak, R. Wyrzykowski, and J. Ondrej, Unleashing the Performanceof ccNUMA Multiprocessor Architectures in Heterogeneous Stencil Computations TheJournal of Supercomputing, 13 pages, po recenzji – zaakceptowany do drukuIF5Y =1.349, Q2, PM=20, U=60%

4.3 Omówienie celu naukowego oraz najwazniejszych wyników

Metody i algorytmy zrównoleglania i dystrybucji obliczenw architekturach wielo- i masywnie wielordzeniowych

4.3.1 Wprowadzenie

Od ponad 10 lat jestesmy swiadkami prawdziwej rewolucji rozwoju współczesnych systemówkomputerowych. Dokonuje sie ona dzieki przejsciu od tradycyjnych procesorów jednordzenio-wych do rozwiazan wykorzystujacych architektury wielo- i masywnie wielordzeniowe. Zmianeta mozna zaobserwowac zwłaszcza w srodowisku obliczen wielkiej skali (ang. High Performan-ce Computing, HPC), gdzie zauwazalny jest nieustanny przyrost mocy obliczeniowej systemówkomputerowych. Rezultat tego trendu, nowoczesne systemy komputerowe sa coraz bardziej zło-zone, charakteryzuja sie hierarchiczna oraz heterogeniczna architektura, a ich efektywne wyko-rzystanie staje sie globalnym wyzwaniem dla srodowisk naukowych i komercyjnych.

Dynamiczny oraz szybki rozwój architektur komputerowych w odniesieniu do stosunkowokrótkiego okresu ich zywotnosci (4–6 lat) zmusza twórców aplikacji naukowych do ciagłegodostosowania równoległych kodów do stale ewoluujacych systemów obliczeniowych. Ponie-waz aplikacje naukowe, zwykle opracowywane na przestrzeni wielu lat, istnieja zdecydowa-nie dłuzej anizeli konkretny system komputerowy, dostosowywanie ich kodów jest niezwykle

4

Page 6: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

skomplikowanym oraz czasochłonnym procesem. Złozonosc i trudnosc tego procesu potego-wana jest przez koniecznosc posiadania głebokiej wiedzy eksperckiej z zakresu efektywnegowykorzystania coraz bardziej złozonych nowoczesnych systemów komputerowych.

Głównymi atutami obliczeniowymi obecnych architektur HPC sa mozliwosci przetwarzaniawielordzeniowego i wektorowego. Aby wykorzystac pełen potencjał obliczeniowy nowocze-snych architektur komputerowych, nalezy uwzglednic obie te mozliwosci, co uzasadnia obecnyrozwój systemów komputerowych, skoncentrowany wokół masowego przetwarzania wielordze-niowego oraz wektorowego.

Poziom wykorzystania zasobów obliczeniowych zalezy od charakterystyk obliczeniowychalgorytmów. Jednakze równiez sposób uwzglednienia tych charakterystyk bedzie odgrywał zna-czaca role w procesie tworzenia efektywnego oprogramowania. Tylko zapewnienie synergiipomiedzy cechami architektury a charakterystykami danego algorytmu umozliwi stworzeniewydajnego oprogramowania. W osiagnieciu synergii kluczowa role odgrywaja m.in. szerokiewykorzystanie lokalnosc danych, elastyczna i efektywna dystrybucji obliczen, nowoczesne mo-dele wydajnosciowe oraz metody samo-adaptacji równoległych kodów aplikacji naukowych dowybranych cech architektur masywnie wielordzeniowych.

Efektywne wykorzystanie powstajacych systemów komputerowych staje sie kluczowymproblemem, nie tylko w dyscyplinie naukowej jaka jest informatyka, ale takze w takich dzie-dzinach, jak fizyka, chemia, oraz medycyna czy tez innych dyscyplinach naukowych, w któ-rych konieczne sa rozbudowane symulacje komputerowe. Rozwiazanie badz tez zblizenie siedo rozwiazania tego problemu, umozliwi twórcom aplikacji naukowych pełniejsze wykorzysta-nie dostepnej mocy obliczeniowej, stwarzajac znakomita okazja do przeprowadzania bardziejzłozonych symulacji niz kiedykolwiek przedtem.

Strategicznym celem prowadzonych przeze mnie prac naukowo-badawczych jest badanie,ulepszanie oraz upraszczanie procesu dostosowania istniejacych kodów aplikacji naukowychdo szerokiej gamy nowoczesnych systemów komputerowych bazujacych na procesorach orazakceleratorach róznych producentów. Tematyka badawcza realizowanych przeze mnie prac do-tyczy równiez zapewniania przenosnosci równoległych kodów aplikacji naukowych pomiedzyobecnymi, jak i pojawiajacymi sie systemami obliczeniowymi, z zachowaniem wysokiej wy-dajnosci obliczen.

Kluczowymi elementami realizowanych prac sa równiez (i) badania przyczyn powstawaniaograniczen dla uzyskania wysokiej wydajnosci obliczen równoległych, jak równiez (ii) próbaich złagodzenia poprzez opracowanie oryginalnych metod i algorytmów dostosowania obli-czen do wybranych cech architektur. Wiaze sie to z koniecznoscia przeprowadzenia dokładnejanalizy wydajnosciowej kodów aplikacji oraz identyfikacji ograniczen jakie dana architekturakomputerowa nakłada na badana aplikacje.

Nowatorski charakter prowadzonych badan obejmuje opracowanie szeregu autorskich me-tod i algorytmów zrównoleglania i dystrybucji obliczen w architekturach wielo- i masywniewielordzeniowych. W szczególnosci opracowana metodologia znalazła swoje praktyczne za-stosowanie w nastepujacych aplikacjach naukowych:

• Wielowymiarowy dodatnio okreslony algorytm adwekcji (ang. Multidimensional PositiveDefinite Advection Transport Algorithm, MPDATA) [5, 6] bedacy jednym z dwóch głów-nych komponentów modelu geofizycznego EULAG – którego autorem jest Prof. PiotrSmolarkiewicz pracujacy w Research Department of the European Centre for Medium-Range Weather Forecasts, United Kingdom,

• Aplikacja numerycznego modelowania procesu krzepniecia [7, A4] – której autorem jestDr hab. inz. Adam Kulawik pracujacy w Politechnice Czestochowskiej.

5

Page 7: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

4.3.2 Omówienie osiagniec naukowych

Efekty prowadzonych przeze mnie badan, opublikowane w formie jednotematycznego cyklu9 publikacji umozliwiły sformułowania nastepujacych osiagniec naukowych:

• Metody i algorytmy adaptacji równoległych kodów aplikacji naukowych do nowocze-snych architektur procesorów ogólnego przeznaczenia oraz akceleratorów Intel MIC,

• Metody zrównoleglania i dystrybucji obliczen numerycznych w architekturach hybrydo-wych z akceleratorami obliczeniowymi,

• Modele i algorytmy dystrybucji obciazenia w architekturach wielo- i masywnie wielor-dzeniowych oraz klastrach komputerowych.

A) Metody i algorytmy adaptacji równoległych kodów aplikacji naukowych do nowo-czesnych architektur procesorów ogólnego przeznaczenia oraz akceleratorów Intel MIC

Moje pierwsze osiagniecie naukowe dotyczy opracowania autorskiego zbioru metod i algo-rytmów majacych na celu dopasowanie obliczen numerycznych do nowoczesnych architekturkomputerowych, cechujacych sie pamiecia współdzielona i wykorzystujacych procesory ogól-nego przeznaczenia oraz akceleratory Intel MIC. Szczegółowy opis opracowanej metodologiizostał przedstawiony w cyklu nastepujacych prac [A1,A3,A7,A8] oraz [A9,A10], a jej zakresobejmuje:

• Metody dekompozycji heterogenicznych obliczen typu stencil;

• Metode dystrybucji obliczen z wykorzystaniem przetwarzania wielordzeniowego i wek-torowego;

• Algorytm synchronizacji obliczen oparty na podejsciu data-flow.

Zaproponowana metodyka została wykorzystana i zweryfikowana w praktyce, na przykła-dzie rzeczywistych aplikacji naukowych. Opracowany zestaw metod znalazł swoje zastosowa-nia w algorytmie MPDATA, pozwalajac na lepsze wykorzystanie architektur obliczeniowychbazujacych na systemach z pamiecia współdzielona. Elastycznosc opracowanego algorytmusynchronizacji umozliwiła jego wykorzystanie zarówno w algorytmie MPDATA jak i aplikacjinumerycznego krzepniecia.

A.1) Metody dekompozycji heterogenicznych obliczen typu stencil

W ramach prowadzonych badan została zaproponowana ogólna metoda blokowej dekompozy-cji dla heterogenicznych obliczen typu stencil, która bazuje na wykorzystaniu dwóch znanychtechnik optymalizacji petli: loop fusion oraz loop tiling. Głównym celem opracowanej metodyjest przezwyciezenie ograniczen komunikacyjnych jakie nowoczesne architektury komputero-we nakładaja na wykonywane obliczenia. Rys. 1 przedstawia uproszczona koncepcje opraco-wanej metody. Prezentowany przykład ilustruje dwa kernele obliczeniowe (k1 oraz k2), którychwykonanie zalezy od siebie (Rys. 1a). Wykonanie obliczen w ramach pierwszego kernela skut-kuje zapisaniem wyników obliczen do pamieci komputera, natomiast realizacja drugiego kerne-la wymaga ich ponownego skopiowania. W przypadku, kiedy rozmiar pamieci podrecznej jestniewystarczajacy aby przechowac wszystkie elementy tablicy z wyznaczonymi danymi, głów-nym punktem wymiany stanie sie pamiec główna komputera, co w konsekwencji zdecydowanieogranicza osiagalna wydajnosc obliczen.

Zredukowanie liczby odwołan do pamieci głównej wiazało sie z opracowaniem blokowejorganizacji obliczen poprzez zastosowanie dwóch technik optymalizacji petli: loop fusion oraz

6

Page 8: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Execution order

blocki

d e fk1: c

d e fk2:

g h ik1: fg

g h ik2:

blocki+1

P1 P2 P1 P2blocki-1

a b ck2:

a b c dk1:P1 P2

P2 - Phase of computation P1 - Phase of keeping partial outcomes in cache

c)

a b c d e f g h ia b c d e f g h i

k2: out[i]=A[i-1]*A[i+1]

a b c d e f g h ia b c d e f g h i

k1: A[i]=in1[i]*in2[i]

Exe

cutio

n o

rder

a)blocki

d e fk1: c

d e fk2:

blocki-1

a b ck2:

a b c dk1: g h ik1: fg

g h ik2:

blocki+1

Execution order

b)

... Extra computation

Rysunek 1: Koncepcja reorganizacji obliczen a) przykład obliczen typu stencil, b) metoda blo-kowej organizacja obliczen z wykorzystaniem technik loop fusion and loop tiling, c) metodaredukcji liczby dodatkowo wyznaczanych elementów

loop tiling (Rys. 1b). W rezultacie, domena obliczeniowa została zdekomponowana na zbiórbloków obliczeniowych. W ramach kazdego bloku realizowane sa obliczenia dla wszystkichkernelii w obrebie odpowiednio wyznaczonego fragmentu tablicy danego kernela, natomiastbloki przetwarzane sa sekwencyjnie. W porównaniu z bazowa wersja, nowe podejscie zmieniakolejnosc wykonywania operacji. Zaproponowana metoda umozliwia przechowanie wynikówczastkowych obliczen pierwszego kernela w pamieci podrecznej, z pominieciem pamieci głów-nej dla odpowiednio dobranego rozmiaru bloku.

Głównym kosztem opracowanej metody jest koniecznosc przeprowadzenia dodatkowychobliczen w ramach kazdego bloku w celu zapewnienia poprawnosc wyników obliczen. Wymógzastosowania dodatkowych obliczen wynika z zaleznosci informacyjnych jakie wystepuja mie-dzy kernelami: wyznaczenie poszczególnych elementów w obrebie drugiego kernela zalezy ododpowiednich elementów obliczanych w pierwszym kernelu. Przykładowo, obliczenie elemen-tu d w obrebie drugiego kernela jest zalezne od elementów c i e wyznaczanych w pierwszymkernelu (Rys. 1b).

Kluczem do zminimalizowania liczby dodatkowych obliczen okazał sie fakt powtarzaniatych samych obliczen przez sasiadujace bloki (Rys. 1c). Ogólna koncepcja opracowanego roz-wiazania polegała na pozostawianiu w pamieci podrecznej odpowiednich fragmentów tablic,zamiast wykonania obliczen w obrebie kolejnego bloku. Rys. 1c) przedstawia koncepcje tejmetody. Aby wdrozyc metode redukcji liczby dodatkowo wyznaczanych elementów, zostałopracowany mechanizm mapowania obszarów pamieci podrecznej, który polega na podmia-nie odpowiedniej przestrzeni adresowej na potrzebe realizacji obliczen w ramach kolejnychbloków.

Opracowana metodologia została zastosowana w aplikacji MPDATA, której struktura wy-konania ma charakter algorytmu iteracyjnego. W zaleznosci od rodzaju symulowanego zjawi-ska fizycznego, liczba kroków czasowych aplikacji MPDATA moze przekraczac nawet kilkamilionów. W skład kazdego kroku czasowego badanej aplikacji wchodzi siedemnascie kerneliobliczeniowych, których struktura jest zgodna z obliczeniami typu stencil. Niemal kazdy kernelzalezy od co najmniej dwóch innych kerneli. Oznacza to, ze obliczenie pojedynczego elementuw ramach danego kernela, wymaga uzycia odpowiednio dobranej grupy elementów wyznacza-nych w obrebie wczesniejszych kerneli. Graf zaleznosci danych dla aplikacji MPDATA oraz

7

Page 9: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

przykładowa struktura kerneli została zilustrowana na Rys. 2.

o

o

Kernel 17

Kernel 16Kernel 15Kernel 14

Kernel 13Kernel 12

Kernel 11Kernel 10Kernel 9

Kernel 4

Kernel 3Kernel 2Kernel 1

Kernel 6

Kernel 8

Kernel 5

Kernel 7

b)

Exe

cuti

on o

fsu

bse

quent

tim

e s

teps

a)

o j-dimi-dim

k-dim

o

out: v1

in: x

Ker

nel 9

out: x

in: x, u1, u2, u3, h

oj-dim

i-dim

k-dim

out: v2

in: x

Ker

nel 1

0

out: v3

in: x

o j-dimi-dim

k-dim

Ker

nel 1

1

Rysunek 2: Graf zaleznosci danych dla MPDATA (a) oraz przykłady stencili dla poszczególnychkerneli MPDATA

Przeprowadzona reorganizacja struktury kodu aplikacji MPDATA skutkowała opracowa-niem (3+1)-wymiarowej dekompozycji obliczen, której ogólna koncepcja została zilustrowanana Rys. 3. W rezultacie zastosowanych zmian została zredukowana liczba odwołan do pamiecigłównej zwiazanych z przesyłaniem wyników obliczen realizowanych w ramach wszystkichkerneli aplikacji MPDATA. W efekcie koncowym, dostep do pamieci głównej jest zwiazanyz transferem danych wejsciowych i wyjsciowych niezbednych do wykonania pojedynczego kro-ku czasowego.

a) b)

Kernel 2

Kernel 17

Kernel l

i-dimj-dim

k-dimK-dim

Rysunek 3: (3+1)-wymiarowa dekompozycja aplikacji MPDATA: a) blokowa reorganizacja ob-liczen; b) realizacja wszystkich kerneli obliczeniowych

Szczegółowy opis opracowanej metodologi został przedstawiony w szeregu prac nauko-wych. Prace [A1,A3] odnosza sie do opracowanej dekompozycji obliczen aplikacji MPDATAbazujacej na zrównolegleniu kodu z uzyciem trójwymiarowej domeny obliczeniowej. Opraco-wana metodologia znalazła równiez zastosowania w mojej ostatniej pracy [A9], której głównymcelem jest zapewnienie przenosnosci kodu aplikacji MPDATA miedzy róznorodnymi platforma-mi HPC.

Zaleta (3+1)-wymiarowej dekompozycji obliczen jest redukcja liczby odwołan do pamiecigłównej. Jednakze metoda ta nie gwarantuje efektywnego wykorzystania platform wieloproce-sorowych typu ccNUMA, które łacza dostepne procesory CPU na poziomie pamieci podrecz-nej, za pomoca magistrali typu punkt-punkt (np. Intel QuickPath Interconnect). Prowadzonebadania wykazały, ze ze wzgledu na zbyt niska wydajnosc tych magistrali, komunikacja mie-dzy procesorami moze miec negatywny wpływ na wydajnosc obliczen równoległych.

Rozwiazaniem tego problemu jest opracowana przeze mnie ogólna metoda izolowania ob-liczen równoległych typu stencil, miedzy fizycznymi grupami rdzeni, tj. procesorami lub ichfragmentami. Metoda ta znalazła swoje zastosowanie w aplikacji MPDATA jako rozszerze-nie (3+1)-wymiarowej dekompozycji obliczen równoległych. Ogólna postac zaproponowanej

8

Page 10: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

metody została przedstawiona w pracach [A1,A3], natomiast praca [A7] prezentuje jej finalnapostac. Dodatkowo, skutecznosc proponowanego rozwiazania została przetestowana w pracy[A10] z wykorzystaniem róznorodnych platform wieloprocesorowych typu ccNUMA.

Rys. 4 przedstawia ogólna koncepcje równoległej organizacji obliczen z wykorzystaniemplatform wieloprocesorowych. Przedstawiony na Rys. 4a) przykład obejmuje wykonanie trzechkerneli obliczeniowych realizujacych obliczenia typu stencil. Z kolei, Rys. 4b) oraz 4c) ilustrujadwa scenariusze umozliwiajace zrównoleglenie przedstawionych obliczen z wykorzystaniemdwóch procesorów CPU.

c) CPU_A CPU_B

extra computations

b) CPU_A CPU_B

sync.

a b c d d e fca b c d e f

data transfer between CPUs

data transfer inside CPU

a b c d e fca b c d e f

a b c d e fa b c d e f

a)

// Kernel 2:for(...; ...; ...) B[i]=A[i]+A[i+1];

// Kernel 3:for(...; ...; ...) C[i]=B[i-1]+B[i];

// Kernel 1:for(...; ...; ...) A[i]=in[i-1]+in[i+1];

sync.

sync. sync.

Rysunek 4: Równoległa organizacja obliczen z wykorzystaniem platform wieloprocesorowych;a) przykład obliczen typu stencil z trzems kernelami; b) tradycyjne podejscie zrównoleglenieobliczen; c) metoda izolowania obliczen równoległych

Zgodnie z pierwszym scenariuszem (Rys. 4b), domena obliczeniowa jest podzielona nadwie czesci, z których kazda przetwarzana jest z uzyciem pojedynczego procesora. Ze wzgle-du na zaleznosci informacyjne jakie wystepuja pomiedzy kernelami, przedstawiona równole-gła realizacja obliczen wymaga odpowiedniej współpracy procesorów. Wiaze sie to z koniecz-noscia wprowadzenia punktów synchronizacji, by zapewnic poprawnosc wykonywanych obli-czen, oraz wykonania transferów danych miedzy procesorami.

W odróznieniu od pierwszego podejscia, drugi scenariusz zakłada odizolowanie obliczenrównoległych wykonywanych przez współpracujace procesory. Głównym załozeniem tej meto-dy jest wykonywanie obliczen równoległych w sposób jak najbardziej niezalezny. Aby osiagnacten cel, transfer niezbednych danych miedzy procesorami został zastapiony wykonaniem dodat-kowych obliczen. W rezultacie, kazdy procesor wykonuje wiecej obliczen w obrebie pierwsze-go kernela, eliminujac tym samym zarówno koniecznosc synchronizacji procesorów jak i wy-móg przeprowadzania transferów danych. Rys. 4c) ilustruje ogólna koncepcje opracowanegosposobu izolowania obliczen miedzy procesorami.

Zastosowanie kombinacji metody izolowania obliczen równoległych oraz metody (3+1)-wymiarowej dekompozycji obliczen pozwala na dopasowanie sie obliczen aplikacji MPDATAdo wieloprocesorowych architektur komputerowych z pamiecia współdzielona. Połaczenie opi-sanych metod minimalizuje narzuty komunikacyjne zwiekszajac skalowalnosc obliczen. Nale-zy tutaj jednak podkreslic, iz struktura obliczen aplikacji MPDATA (Rys. 2) jest zdecydowaniebardziej skomplikowana anizeli przykład przytoczony na Rys. 4a).

W efekcie zastosowanej kombinacji dwóch zaproponowanych metod, domena obliczeniowaaplikacji MPDATA jest dzielona na zbiór pod-domen zgodnie z drugim scenariuszem opraco-wanej metodologii. Oznacza to, ze realizacja obliczen w obrebie kazdej pod-domeny wiaze sie

9

Page 11: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

z wykonaniem dodatkowych obliczen. Całkowita liczba dodatkowo wyznaczanych elementówwynika z zaleznosci informacyjnych jakie wystepuja miedzy kernelami aplikacji MPDATA.Przykładowa struktura dodatkowo wyznaczanych elementów została zilustrowana na Rys. 5a).Nastepnie, kazda pod-domena jest zdekomponowana na zbiór bloków obliczeniowych przetwa-rzanych w sekwencyjnej kolejnosci zgodnie z zaproponowana (3+1)-wymiarowa dekompozycjaobliczen. Rys. 5b przedstawia ogólna strukture realizacji obliczen aplikacji MPDATA.

a) b)

Synchronizations between CPUs

Synchronizations between CPUs

MPDATA sub-domain

Sync. point

MPDATA block

Exe

cution

of su

bse

quen

t blo

cks

Sync. in CPU

MPDATA blockKernel 1

Kernel 4

Sync. in CPU

Kernel 5

Kernel 7

Sync. in CPU

Kernel 14

Kernel 17Sync. in CPU

MPDATA sub-domain

Sync. point

MPDATA block

Exe

cution

of su

bse

quen

t blo

cks

Sync. in CPU

MPDATA blockKernel 1

Kernel 4

Sync. in CPU

Kernel 5

Kernel 7

Sync. in CPU

Kernel 14

Kernel 17Sync. in CPU

Rysunek 5: Struktura dodatkowo wyznaczanych elementów dla pojedynczej pod-domeny (a),oraz schemat wykonania aplikacji MPDATA z uzyciem kombinacji metody izolowania obliczenrównoległych oraz metody (3+1)-wymiarowej dekompozycji obliczen (b)

A.2) Metoda dystrybucji obliczen z wykorzystaniem przetwarzania wielordzeniowegoi wektorowego

Tematyka moich badan zwiazana była równiez z opracowaniem efektywnej organizacji równo-ległych obliczen, realizowanych z wykorzystaniem architektur wielo- i masywnie wielordze-niowych. Głównym zadaniem opracowanej strategii jest zapewnienie efektywnej dystrybucjiobliczen pomiedzy dostepnymi jednostkami obliczeniowymi, przy zachowaniu podstawowychzalet opracowanych wczesniej metod, np. zmniejszenie narzutów na komunikacje oraz popra-wa wykorzystania lokalnosci danych. Kluczem do osiagniecia tego celu stało sie opracowaniezrównoleglenia obliczen aplikacji MPDATA w ramach kazdego bloku, powstałego w wynikuzastosowania opracowanej dekompozycji obliczen badanej aplikacji. Opracowana metoda zna-lazła swoje zastosowanie w pracach [A1,A3,A8,A9].

Rys. 6a ilustruje podstawowa koncepcje zrównoleglania kazdego bloku aplikacji MPDATA,którego rozmiar definiowany jest przez trzy parametry: nB×mB× lB. Opracowana strategiazakłada równomierny podział kazdego bloku na CN czesci, gdzie parametr CN okresla liczbedostepnych rdzeni. Nastepnie sasiadujace ze soba rdzenie mapowane sa na kolejno wystepujacepo sobie czesci bloku. Ze wzgledu na zaleznosci informacyjne pomiedzy kernelami aplikacjiMPDATA, zaproponowana strategia mapowania skraca sciezke wymiany danych miedzy rdze-niami.

Kolejnym elementem prowadzonych prac badawczych było równiez umozliwienie wyko-rzystania przetwarzania wielowatkowego (ang. Simultaneous Multi-Threading, SMT), którew swojej definicji zakłada współbiezne uruchamianie S watków na pojedynczym rdzeniu. Po-niewaz watki te współdziela pamiec podreczna danego rdzenia, koncepcja opracowanego roz-

10

Page 12: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

mB

C1 CCN

nB

lB

Δm=mBCN

a)

11111111

mB

C1 CCN

4

nB

lB

4

T1,1

T1,2

T1,3

T1,4

T1,1

TCN,1

TCN,2

TCN,3

TCN,4

TCN,1

Group ofthreads for

Core1

b)

1 11

C1

CCN

4 4

lB

nB=1mB

4 4

Δm

T1,1T1,2T1,3T1,4T1,1

Group ofthreads for

Core1

Group ofthreads for

CoreCN

TCN,2TCN,3TCN,4TCN,1TCN,1

c)C1 CCN

lB

nB=22

mB2 2 2

T1,3 T1,4

T1,1T1,2T1,1

T1,3

TCN,2

TCN,3 TCN,4

TCN,1TCN,3

TCN,1

Group ofthreads for

CoreCN

Group ofthreads for

Core1

d)

ΔmΔm=mB

CN

Δm=mBCN Δm

mBCNΔm=

Δm

Group ofthreads for

CoreCN

Rysunek 6: Koncepcja zrównoleglania kazdego bloku obliczeniowego aplikacji MPDATA z wy-korzystaniem CN rdzeni (a), oraz metody grupowania watków i dystrybucji obliczen miedzynimi z uzyciem 4 watków na kazdy rdzen dla nastepujacych przypadków nB ≥ 4 (b), nB = 1(c), i nB = 2 (d)

wiazania polegała na zwiekszeniu wykorzystania lokalnosci danych poprzez odpowiednie gru-powanie watków oraz optymalna dystrybucje obliczen w obrebie kazdego z nich.

Aby osiagnac ten cel, watki przypisane do danego rdzenia wykonuja współbieznie obli-czenia w zwartej grupie roboczej, która wspólnie przetwarza dane zlokalizowana w najbliz-szym sasiedztwie. Oznacza to, ze utworzone czesci kazdego bloku (Rys. 6) sa dalej dzielone namniejsze fragmenty o rozmiarze dopasowanym zarówno do liczby watków, jak i bloku. Przy-kłady opracowanej równoległej organizacji obliczen zostały zilustrowane na Rysunkach 6b)-6d)z uwzglednieniem róznych rozmiarów bloku oraz 4 watków na rdzen.

Realizacja równoległych obliczen w zwartej formie pozwala na zredukowanie liczby od-wołan do pamieci podrecznej, poprzez wielokrotne uzycie danych. Duzy stopien złozonosci tejmetody wymusił opracowanie dedykowanego dyspozytora zadan, który zgodnie z metodologia,rozdysponowuje obliczenia miedzy rdzeniami i watkami.

Naturalnym rozszerzeniem opracowanej metody było umozliwienie efektywnego przetwa-rzania wektorowego z zachowaniem przenosnosci miedzy róznymi architekturami[A1,A3,A10].Osiagniecie tego celu zostało zrealizowane z uzyciem automatycznej wektoryzacji obliczen,oferowanej przez współczesne kompilatory. Zasadniczo, proces ten czesto wymaga stosowaniaodpowiednich podpowiedzi dla kompilatora, w wyniku czego osiagniecie przenosnosci spro-wadza sie do ponownej kompilacji programu.

Istnieje wiele przyczyn, które potencjalnie moga zmniejszyc wydajnosc wektoryzowane-go kodu lub nawet całkowicie zapobiec wektoryzacji. Aby osiagnac wysoka efektywnosc dlaprocesu automatycznej wektoryzacji, struktura kodu aplikacji MPDATA została odpowiednioprzebudowana. W efekcie prowadzonych prac została opracowana sekwencja siedmiu krokówmajacych na celu złagodzenie lub całkowita eliminacje ograniczen nakładanych na proces au-tomatycznej wektoryzacji. W szczególnosci, zbiór ten obejmuje:

Krok 1 Zaprojektowanie odpowiedniej struktury danych, umozliwiajacej zastosowanie wekto-ryzacji obliczen na elementach kolejno zapisanych w pamieci.

11

Page 13: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Krok 2 Wyrównanie danych w pamieci do odpowiedniej granicy, której wartosc jest automa-tycznie ustalana w oparciu o charakterystyke konkretnej architektury komputerowej.

Krok 3 Unikniecie zaleznosci w petlach typu read-after-write, poprzez zastosowania technikipodziału petli (ang. loop splitting).

Krok 4 Zastosowania techniki łaczenia petli (ang. loop fusion) majacej na celu zwiekszeniewykorzystania lokalnosci danych w obrebie kerneli aplikacji MPDATA.

Krok 5 Eliminacja instrukcji warunkowych typu if zwiazanych z wykonaniem warunków brze-gowych aplikacji MPDATA.

Krok 6 Opracowanie mechanizmu elastycznego zarzadzania procesem automatycznej wekto-ryzacji, którego głównym zadaniem jest dostosowanie struktury kodu z uwzglednie-niem (i) zmiennego rozmiaru siatki obliczeniowej, (ii) zmiennego rozmiaru bloków,(iii) zmiennego rozmiaru wektora, oraz (iv) zmiennej liczby uzytych rdzeni.

Krok 7 Zastosowania ujednoliconego zestawu podpowiedzi dla kompilatorów róznych firmmajacych na celu dostarczenie kompilatorowi informacji na temat (i) liczby iteracjiwektoryzowanych petli, (ii) dopasowania badz niedopasowania danych, (iii) wystepo-wania zaleznosci pomiedzy danymi (badz ich braku), (iv) mozliwosci zapisywania wy-ników obliczen z pominieciem hierarchii pamieci podrecznej, jak równiez (v) mozli-wosc ignorowania potencjalnych przyczyn blokujacych proces wektoryzacji.

A.3) Algorytm synchronizacji obliczen oparty na podejsciu data-flow

Prowadzone prace badawcze dotyczyły równiez opracowania algorytmu dla procesu synchroni-zacji obliczen typu stencil, którego opis został zaprezentowany w mojej publikacji [A8]. Głów-nym załozeniem opracowanego algorytmu jest zmniejszenie kosztów synchronizacji, którejefektywnosc wraz z nieustannym wzrostem liczby rdzeni systemów komputerowych zaczynamiec coraz wiekszy wpływ na wydajnosc obliczen.

Koncepcja proponowanego algorytmu zakłada realizacje procesu synchronizacji jedyniedla współzaleznych watków zamiast stosowania ogólnego podejscia typu bariera, które za-kłada synchronizacje wszystkich rdzeni (watków). Aby przyblizyc zaproponowana koncepcje,Rys. 7a) przedstawia przykład obliczen typu stencil oraz schemat ich zrównoleglenia z wyko-rzystaniem trzech rdzeni. By zachowac poprawnosc wyników obliczen równoległych wyma-gane w tym przypadku jest przeprowadzenie synchronizacji rdzeni w dwóch punktach kodu.Standardowym rozwiazaniem dla procesu synchronizacji jest podejscie typu bariera (Rys. 7 b),która w swojej konstrukcji zakład synchronizacja wszystkich rdzeni (watków).

Analizujac przepływ danych dla zaprezentowanego przykładu okazuje sie, ze nie ma ko-niecznosci przeprowadzenia synchronizacji dla wszystkich rdzeni (Rys. 7 a). Rdzen pierwszy(core_A) oraz rdzen ostatni (core_C) równolegle przetwarzaja dane w sposób niezalezny odsiebie. Natomiast, równoległa realizacja obliczen w obrebie kazdego z nich jest współzaleznaod wykonania rdzenia core_B.

Zrozumienie zaleznosci informacyjnych miedzy rdzeniami dla powyzszego przykładu po-zwala na zdefiniowanie dwóch grup rdzeni, w obrebie których wymagana jest synchronizacjaobliczen. W efekcie, w składzie pierwszej grupy wchodza rdzenie core_A oraz core_B, nato-miast w ramach drugiej grupy znajduja sie rdzenie core_B oraz core_C. Przeprowadzenie syn-chronizacji jedynie wewnatrz kazdej grupy zapewni poprawnosc wykonywanych obliczen rów-noległych, uniezalezniajac tym samych wykonanie obliczen realizowanych prze rdzenie core_Aoraz core_C. Ogólna konstrukcja opracowanego procesu synchronizacji została przedstawiona

12

Page 14: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Data

-Flo

w

Synch

roniz

ati

on

Appro

ach

Barr

ier

Appro

ach

Execution time

Arrive phase

Waiting phase

Departure phase

core_A

core_B

core_C

core_A

core_B

core_C

b)

a)

Sync. point

core_A core_B core_C

A[i]=in[i-1]+in[i]+in[i+1]

B[i]=A[i]+A[i+1]

out[i]=B[i-1]+B[i]

Sync. point

c)

Rysunek 7: Koncepcja synchronizacji obliczen typu Stencil [A8]: a) przykład obliczen orazschemat ich zrównoleglenia z uzyciem trzech rdzeni, b) ogólna konstrukcja podejscia typu ba-riera, c) ogólna struktura procesu synchronizacji współzaleznych rdzeni

na Rys. 7 c). Zaproponowana metoda synchronizacji uwalnia zasoby obliczeniowe rdzeni, a tymsamym umozliwia zwiekszenie efektywnosci ich wykorzystania.

Wdrozenie opracowanej metody wymagało przeprowadzenia szczegółowej analizy przepły-wów danych miedzy rdzeniami i watkami jakie wystepuja w danej aplikacji. Analizujac zalez-nosci informacyjne aplikacji MPDATA oraz proces jego zrównoleglenia, okazało sie, ze transferwymaganych danych odbywa sie jedynie w obrebie grup watków, które sa przypisane do kolej-no wystepujacych po sobie fizycznych rdzeni. Rys. 8 ilustruje korelacje pomiedzy rdzeniami,watkami oraz synchronizacja dla aplikacji MPDATA. W przypadku aplikacji do modelowaniakrzepniecia, przeprowadzona analiza wykazała, ze wymiana danych zachodzi w obrebie grupkolejno wystepujacych po sobie dwóch watków (logicznych rdzeni). Dodatkowa wymiana da-nych jest równiez wymagana miedzy ostatnim i pierwszym watkiem.

SP - synchronization point

coreCN

thre

ad

CN

,1

thre

ad

CN

,SM

T

SP3

core1

thre

ad

1,1

thre

ad

1,S

MT

core2

thre

ad

2,1

thre

ad

2,S

MT

core3

thre

ad

3,1

thre

ad

3,S

MT

syncGroup2

syncGroup3syncGroup1

syncGroupCN-1

SPCN-1

SP1

SP2

j-dimi-dim

k-dim

o o

a) b)

Rysunek 8: Korelacja pomiedzy rdzeniami, watkami oraz synchronizacja dla aplikacjiMPDATA: a) ogólny wzorzec dla obliczen typu stencil definiujacy zakres wymienianych da-nych w punktach synchronizacji, oraz b) konstrukcja grup watków w obrebie których wymaga-na jest synchronizacja obliczen

13

Page 15: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

W celu zastosowania opisanego mechanizmu synchronizacji do badanych aplikacji zostałopracowany algorytm synchronizacji obliczen typu stencil (Algorytm 1). W odróznieniu odstandardowego podejscia typu bariera, konstrukcja opracowanego algorytmu pozwala na prze-prowadzenie synchronizacji jedynie dla współzaleznych watków. Oznacza to, ze realizacja nie-zaleznych obliczen równoległych nie jest wstrzymywana przez proces synchronizacji, tak jakma to miejsce w przypadku bariery.

Algorytm 1 Algorytm synchronizacji dedykowany dla obliczen typu stencil [A8]Input: le f tLocalSens; rightLocalSens; le f tPoint; rightPoint

L := fetch_and_add(leftPoint.counter, -1) � Arriving phaseR := fetch_and_add(rightPoint.counter, -1)if L = 0 and R = 0 then

le f tPoint.counter := le f tPoint.threadsNumle f tPoint.globalSense := le f tLocalSensrigthPoint.counter := rightPoint.threadsNumrightPoint.globalSense := rightLocalSens

else if L = 0 thenle f tPoint.counter := le f tPoint.threadsNumle f tPoint.globalSense := le f tLocalSenswhile rightPoint.globalSense �= rightLocalSens do � Waiting phaseend while

else if R = 0 thenrightPoint.counter := rightPoint.threadsNumrightPoint.globalSense := rightLocalSenswhile le f tPoint.globalSense �= le f tLocalSens do � Waiting phaseend while

elsewhile le f tPoint.globalSense �= le f tLocalSens or � Waiting phase

rightPoint.globalSense �= rightLocalSens doend while

end ifleftLocalSens := !leftLocalSens � Departure phaserightLocalSens := !rightLocalSens

A.4) Weryfikacja efektywnosci zaproponowanych metod i algorytmów

Efektywnosc opracowanych metod została zweryfikowana w praktyce, z wykorzystaniem róz-norodnych platform obliczeniowych, bazujacych na (i) jedno procesorowych architekturachIntel MIC [A1,A3,A8,A9], (ii) 2- oraz 4-procesorowych serwerach ccNUMA [A3,A8,A9,A10],oraz (iii) wieloprocesorowych instalacji SMP/NUMA SGI UV 2000 [A7] oraz UV 3000 [A10].Badanie wydajnosci zostało przeprowadzone dla róznych rozmiarów siatki obliczeniowej i róz-nej liczby kroków czasowych, z wykorzystaniem zarówno podwójnej, jak i pojedynczej precyzjiobliczen.

Zastosowanie opracowanej metodologi umozliwiło lepsze wykorzystanie dostepnych zaso-bów obliczeniowych badanych aplikacji. Nalezy tutaj podkreslic, ze wzrost wydajnosci ob-liczen był zauwazalny we wszystkich przeprowadzonych testach, zarówno dla (i) aplikacjiMPDATA (w przypadku zastosowania kombinacji opracowanych metod i algorytmu synchro-nizacji), jak i (ii) aplikacji do modelowania krzepniecia w przypadku wykorzystania algorytmusynchronizacji.

14

Page 16: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Tabela 1 przedstawia przykładowe zestawienie wyników wydajnosciowych uzyskanych dladomeny obliczeniowej o rozmiarze 2048×1024×512 oraz 5000 kroków czasowych z wyko-rzystaniem róznych platform firmy Intel. Przedstawione pomiary czasu zostały wykonane dladwóch równoległych wersji aplikacji MPDATA: bazowej oraz zmodyfikowanej, z uzyciemwszystkich zasobów obliczeniowych. Oprócz czasu wykonania, wspomniana tabela przedsta-wia uzyskane wartosci przyspieszenia S, wyznaczane wzgledem bazowej równoległej wersjiaplikacji, oraz uzyskana wydajnosc obliczen SP.

Tabela 1: Wyniki wydajnosciowe aplikacji MPDATA dla siatki obliczeniowej o rozmiarze2048×1024×512 przeprowadzone z wykorzystaniem róznych platform firmy Intel

Platforma komputerowa CN Architektura tB tM S SP4x Intel Xeon Platinum 8180 112 Skylake 1472,5 151,3 9,73 1048,1

2x Intel Xeon Gold 6148 40 Skylake 2948,9 352,6 8,36 447,92x Intel Xeon E5-2697v4 36 Broadwell 4382,9 598,6 7,32 263,32x Intel Xeon E5-2697v3 28 Haswell 4714,1 777,7 6,06 203,12x Intel Xeon E5-2695v2 24 Ivy Bridge 5944,6 1074,7 5,53 146,41x Intel Xeon Phi 7250F 68 Knights Landing 5357,3 609,5 8,78 261,9

tB – czas wykonania bazowej wersji [s]; tM – czas wykonania zmodyfikowanej wersji [s];S – przyspieszenie; SP – osiagnieta wydajnosc obliczen [Gflop/s]; CN - liczba rdzeni

Z tabeli wynika, ze modyfikowana równoległa wersja, uzyskuje zdecydowanie lepsza efek-tywnosc obliczen w stosunku do wersji bazowej. Najwieksze wzrosty wydajnosci osiagnietew wyniku zastosowania opracowanej metodologii odnotowano dla 4-procesorowej platformyze 112 rdzeniami, dla której uzyskana faktyczna wydajnosc (ang. sustained performance) rze-du 1 Tflop/s. W tym przypadku, obliczenia równoległe wykonuja sie prawie 10 razy szybciejniz bazowa równoległa wersja aplikacji.

Przedstawione wyniki wydajnosciowe, potwierdzaja skutecznosc proponowanych metododwzorowania aplikacji MPDATA, na architektury procesorów ogólnego przeznaczenia orazIntel MIC. Zaproponowana zmodyfikowana wersja aplikacji MPDATA jest na tyle złozona, zew celu osiagniecia jak najwyzszej wydajnosci, wymagane jest zastosowanie indywidualnej kon-figuracji kodu dla kazdej architektury. Aby wygenerowac optymalna konfiguracje, w pracy [A9]została zaproponowana metoda automatycznej kalibracji opracowanych metod, umozliwiajacasamo-dostosowanie sie kodu MPDATA do wybranych cech architektur komputerowych.

Biorac pod uwage charakterystyki obecnych i nadchodzacych architektur wieloprocesoro-wych, zastosowanie kombinacji opracowanych metod daje doskonałe mozliwosci do uzyskaniaprzenosnosci kodu aplikacji MPDATA miedzy róznymi architekturami z zachowaniem wyso-kiej wydajnosci obliczen, co zostało przedstawione w mojej ostatniej pracy [A9]. Uzyskanewyniki prowadzonych badan stanowia istotny wkład w realizacje otrzymanego przezemnie grantu NCN Sonata 13 pt. "Przenosne programowanie równoległe architektur masyw-nie wielordzeniowych oraz samoadaptujace sie aplikacje" (nr UMO-2017/26/D/ST6/00687,2018–2021).

B) Metody zrównoleglania i dystrybucji obliczen numerycznych w architekturach hy-brydowych z akceleratorami obliczeniowymi

Kolejnym osiagnieciem naukowym było opracowanie metodyki dostosowania aplikacji nauko-wych do architektur hybrydowych z akceleratorami obliczeniowymi takim jak procesory gra-ficzne GPU oraz akceleratory Intel MIC. Istota prowadzonych prac naukowo-badawczych było

15

Page 17: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

dazenie do pełnego wykorzystania wszystkich komponentów architektury hybrydowej, w tymprocesorów oraz akceleratorów. Zaproponowana metodologia znalazła swoje odzwierciedleniew pracach [A2,M1,A4], a jej zakres badawczy obejmuje:

• Metoda adaptacji aplikacji MPDATA do architektur hybrydowych CPU–GPU,

• Metoda adaptacji aplikacji numerycznego modelowania krzepniecia do architektur hy-brydowych CPU–MIC.

B.1) Metoda adaptacji aplikacji MPDATA do architektur hybrydowych CPU–GPU

W pracy [A2] została zaproponowana metoda odwzorowania aplikacji MPDATA na architektu-ry hybrydowe wyposazone w procesory CPU i GPU. Efekty prowadzonych badan przedstawiarówniez monografia [M1], która zawiera obszerniejszy opis opracowanej metodologii.

Stworzenie hybrydowej wersji aplikacji MPDATA wymagało połaczenia autorskiej wersjikodu MPDATA dostosowanej do procesorów CPU z wersja dopasowana do procesorów GPU[A2], której implementacja stanowiła efekt prac badawczych zespołu naukowego kierowane-go przez Prof. dr hab. inz. Romana Wyrzykowskiego. Ze wzgledu na róznorodnosc architekturCPU i GPU, kazda z uzytych wersji została indywidualnie dopasowana do własciwosci kon-kretnej architektury, pozwalajac tym samym na jej efektywne wykorzystania.

Zapewnienie efektywnosci obliczen dla architektur hybrydowych wymagało rozwiazaniaproblemów, których zakres obejmował efektywna dystrybucje, zarzadzanie i synchronizacjeobliczen oraz równowaznie obciazenia w obrebie dwóch głównych komponentów platformy:CPU oraz GPU.

Ze wzgledu na cechy architektury hybrydowej, aplikacja MPDATA wymagała podziału ob-liczen pomiedzy komponentami CPU i GPU. W tym celu została opracowana metoda odwzo-rowania aplikacji na architektury hybrydowe, która umozliwiła minimalizacje komunikacji po-miedzy CPU i GPU kosztem nadmiarowych obliczen. Konstrukcja obliczen aplikacji MPDATAumozliwiła zastapienie czesci komunikacji dodatkowymi obliczeniami wielokrotnie powtarza-nymi przez obie jednostki obliczeniowe. W efekcie koncowym, procesory CPU i GPU rów-nolegle realizuja obliczenia w ramach poszczególnych kroków czasowych, pomiedzy zas niminastepuje synchronizacja obliczen oraz wymiana koniecznych danych. Rys. 9a) ilustruje opra-cowana koncepcje odwzorowania aplikacji MPDATA na architektury hybrydowe CPU–GPU.

CPU

forkOpenCL Host API

(GPU management)

OpenCL(Parallel Computations)

OpenMP(Parallel Computations)

join

GPU

OpenMP

Syn

chron

ization

Syn

chron

ization

...

...

...

...

...

...

...

...

...

...

...

...

kernels

1st time step

CPU

GPU

synchronizationpoint

CPU

GPU

2nd time step

CPU

GPU

3rd time step

synchronizationpoint

a) b)

Rysunek 9: Koncepcja odwzorowania aplikacji MPDATA na architektury hybrydowe (a), modelprogramowania hybrydowego z uzyciem OpenMP i OpenCL (b)

W celu realizacji zaproponowanej metody, opracowano sposób zarzadzania obliczeniami,oparty na wykorzystaniu hybrydowego srodowiska programowania OpenMP–OpenCL. Zasto-sowana kombinacja srodowisk OpenMP i OpenCL umozliwiła efektywne zarzadzanie zarów-no zasobami obu komponentów hybrydowej platformy sprzetowej, jak i ich współdziałaniemw trakcie wykonywania aplikacji MPDATA. Opracowanie efektywnych sposobów zarzadza-nia zasobami obliczeniowymi CPU–GPU wymagało uwzglednienia zarówno odwzorowania

16

Page 18: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

aplikacji MPDATA na architektury hybrydowe, jak i modelu programowania hybrydowego.Rys. 9b) ilustruje zasade działania opracowanego mechanizmu z wykorzystaniem modelu pro-gramowania hybrydowego OpenMP i OpenCL.

Hybrydowa wersja kodu aplikacji MPDATA nie rozwiazuje problemu równowaznego ob-ciazenia w obrebie procesorów CPU oraz GPU. Aby rozwiazac ten problem, został opracowanymechanizm decyzyjny dla procesu równowazenia obliczen, który w trakcie wykonywania apli-kacji MPDATA dynamicznie kalibruje podział siatki obliczeniowej w oparciu o uzyskiwaneczasy obliczen z kolejnych kroków czasowych. Zastosowanie mechanizmu decyzyjnego w po-czatkowej fazie wykonania aplikacji umozliwiło skrócenie czasu obliczen pozostałych krokówczasowych, dzieki optymalnej dystrybucji obliczen pomiedzy CPU a GPU.

Opracowana adaptacja aplikacji MPDATA do hybrydowych platform obliczeniowych po-zwoliła na uwzglednienie charakterystyk wielordzeniowych procesorów ogólnego przeznacze-nia CPU i zapewnienie ich efektywnego współdziałania z procesorami graficznymi GPU. War-tym podkreslenia jest równiez fakt, iz zastosowana kombinacja połaczenia dwóch standardówOpenMP i OpenCL umozliwiła zachowanie funkcjonalnej przenosnosci kodu MPDATA w ob-rebie jednostek obliczeniowych róznych producentów.

Efektywnosc nowej wersji kodu aplikacji MPDATA została przetestowana z wykorzysta-niem systemów hybrydowych skonstruowanych z połaczania procesorów CPU firm Intel i AMDoraz procesorów GPU firm NVIDIA i AMD/ATI. W ramach przeprowadzonych testów wydaj-nosciowych przedstawionych w pracach [A2,M1] wykazano skutecznosc zaproponowanej me-todologii, odnotowujac wzrost wydajnosci obliczen we wszystkich przeprowadzonych testach.

Dodatkowo, opracowana metodologia została zweryfikowana pod katem poprawnosci wy-konywanych obliczen numerycznych. Przeprowadzone wspólnie z naukowcami z Instytutu Me-teorologii i Gospodarstwa Wodnego w Warszawie badania potwierdziły skutecznosc opracowa-nej adaptacji, a ich wyniki zostały opisane w pracy [4].

B.2) Metoda adaptacji numerycznego modelowania krzepniecia do architektur hybrydo-wych CPU–MIC

W pracy [A4], zaproponowano ogólna metodyke dostosowania aplikacji naukowych do archi-tektur hybrydowych z akceleratorami Intel MIC, bez koniecznosci restrukturyzacji kodu zró-dłowego aplikacji. Opracowana metodologia została wykorzystana i zweryfikowana w praktycena przykładzie rzeczywistej aplikacji przeznaczonej do numerycznego modelowania procesukrzepniecia.

Badana aplikacja ma charakter algorytmu iteracyjnego, a jej ogólny schemat wykonaniacechuja obliczenia przeplatane zapisem czesciowych wyników do pliku (Rys. 10). W podsta-wowej (bazowej) wersji aplikacji obliczenia wykonywane sa w sposób równoległy w ramachkolejnych kroków czasowych z wykorzystaniem systemów obliczeniowych charakteryzujacychsie pamiecia współdzielona. Zapis rezultatów wykonywany jest po pierwszym, a nastepnie pokazdym zestawie R kroków czasowych (w badanym przypadku R=2000). W efekcie obliczeniawstrzymywane sa do czasu zakonczenia zapisu danych do pliku. Przyjety schemat pozwala naobserwacje oraz ocene poprawnosci procesu modelowania.

0 1 1999 2000 3999

timecomputation in successive time steps writing results to the file

Rysunek 10: Schemat wykonania obliczen aplikacji do modelowania krzepniecia z uzyciembazowej wersji kodu

Przewodnim problemem badanej wersji aplikacji jest stosunkowo długi czas wykonywaniasymulacji, który osiaga blisko 11 godzin z uzyciem dwuprocesorowych platform obliczenio-

17

Page 19: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

wych. Ponadto, istotnym ograniczeniem dla rozwiazania tego problemu stała sie koniecznoscumozliwienia twórcy tej aplikacji wprowadzania numerycznych udoskonalen opracowywanejaplikacji. Oznacza to brak mozliwosc wprowadzania zaawansowanych metod dla reorganizacjikodu badanej aplikacji, jak to miało to miejsce w przypadku aplikacji MPDATA.

Rozwiazaniem problemu okazało sie właczenie do obliczen koprocesorów Intel Xeon Phibazujacych na pierwszej generacji architektury Intel MIC. W rezultacie prowadzonych praczostał zaproponowany schemat równoległej realizacji obliczen, którego struktura umozliwiajednoczesna realizacje: (i) obliczen równoległych wykonywanych przez procesory oraz akce-leratory, (ii) komunikacji pomiedzy urzadzeniami oraz (iii) zapisu wyników do pliku. Rys. 11ilustruje schemat wykonania obliczen równoległych aplikacji do modelowania krzepniecia do-stosowany do platform hybrydowych CPU–MIC.

3999

CPUTeam 1

CPU Team 0

0 1 2 1999 2000 3999

MIC 1 0 1 2 1999 2000 3999

MIC 0 0 1 2 1999 2000

time

computation in successive time steps

writing results to the file

input data transfer to MIC 0 or MIC 1

data transfer of partial results to MIC 0 or MIC 1

data transfer of partial results from MIC 0 or MIC 1

data transfers required to wiriting results to the file

Rysunek 11: Równoległa organizacja obliczen aplikacji do modelowania krzepniecia dostoso-wana do platform hybrydowych CPU–MIC

Opracowana metodyka adaptacji kodu aplikacji krzepniecia zakłada brak znacznych mody-fikacji kodu zródłowego aplikacji i składa sie z nastepujacych kroków: (i) transformacji strukturdanych; (ii) dekompozycji obliczen oraz optymalizacji wymiany danych; (iii) zapewnienia od-powiedniego zrównowazenia obciazenia pomiedzy procesorami CPU oraz akceleratorami IntelMIC; (iv) zrównoleglenia obliczen pomiedzy dostepnymi rdzeniami/watkami, oraz (v) wek-toryzacji obliczen. Zastosowanie wszystkich kroków opracowanej metodyki stanowi klucz douzyskania wysokiej wydajnosci obliczen.

Przykładowo, w ramach trzeciego kroku została opracowana metoda balansowania obciaze-nia miedzy procesorami CPU oraz akceleratorami Intel MIC. Opracowane rozwiazanie pozwa-la na przeprowadzenie dynamicznej redystrybucji obliczen w trakcie wykonywanych obliczen.W efekcie, redystrybucja obliczen wykonywana jest w oparciu o czasy obliczen poszczegól-nych czesci siatki, natomiast jej proces konczy sie, kiedy czasy obliczen wszystkich trzechczesci (MIC0, CPU oraz MIC1) sa maksymalnie zblizone do siebie.

Kolejnym przykładem jest krok piaty, którego zadaniem jest umozliwienie wektoryzacji ob-liczen. W bazowej wersji algorytmu przeprowadzenie efektywnego procesu wektoryzacji jestniemozliwe ze wzgledu na skomplikowane zaleznosci pomiedzy danymi w badanej aplikacji.Wynika to z faktu, ze obliczenia cechuja sie nieregularnym dostepem do danych, nieprzewidy-walnym w trakcie kompilacji. Aby rozwiazac ten problem, została wprowadzona nieznacznamodyfikacja kodu zródłowego, majaca na celu dodanie tymczasowych buforów odpowiedzial-nych za przechowywanie danych z nieregularnych obszarów pamieci (Rys. 12). Efektem tego

18

Page 20: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

a) b)input data

0 1 2 3

851 852850 1602

output data

input data

851 852 850 1602

851 852850 1602

output data 0 1 2 3

temporaryvectors

Rysunek 12: Koncepcja realizacji procesu wektoryzacji: a) bazowa wersja aplikacji cechujacasie nieregularnym dostepem do danych, oraz b) zmodyfikowana wersja aplikacji wykorzystuja-ca tymczasowe bufory odpowiedzialnych za przechowywanie danych z nieregularnych obsza-rów pamieci

kroku było umozliwienie procesu automatycznej wektoryzacji obliczen. Jednakze, realizacjatego kroku byłaby niemozliwa bez przeprowadzonej transformacji struktur danych przeprowa-dzonej w ramach pierwszego kroku.

Efektywne wykorzystanie wszystkich komponentów platformy CPU–MIC wiazało sie rów-niez z opracowaniem sposobu zarzadzania obliczeniami, którego konstrukcja została oparta nakombinacji: (i) modelu programowania w srodowisku z pamiecia współdzielona oraz (ii) odcia-zeniowego modelu programowania (ang. offload programming model). W praktyce, pierwszyz nich pozwala na wykorzystanie wszystkich dostepnych rdzeni/watków w procesorach i ak-celeratorach, podczas gdy drugi wykorzystywany jest do transmisji danych oraz obliczen doakceleratorów.

Zaproponowana metodyka adaptacji uwzglednia nie tylko efektywne zrównoleglenie orazwektoryzacje obliczen, ale równiez nałozenie transferów danych na obliczenia równoległe re-alizowane w ramach CPU, a takze odpowiedni rozkład obciazen pomiedzy urzadzeniami orazjednoczesne wykonywanie obliczen równoległych i zapisu do pliku. W rezultacie, opracowa-ne podejscie pozwala dla pierwszej generacji architektury Intel MIC na blisko dziesieciokrot-ne zwiekszenie wydajnosci obliczen w stosunku do podstawowej wersji aplikacji realizowanejw sposób równoległy przez dwa procesory ogólnego przeznaczenia.

Skutecznosc opracowanej metodologi została równiez zweryfikowana po katem dokładno-sci wykonywanych obliczen (Rys. 13). W celu sprawdzenia dokładnosci obliczen porównanowyniki symulacji otrzymane dla oryginalnej oraz proponowanej wersji aplikacji, a ocena po-równania została przeprowadzona w scisłej współpracy z twórca badanej aplikacji. W efekcieprzeprowadzonych testów wykazano, ze wyniki symulacji róznia sie w sposób nieistotny pomi-mo wykorzystania róznych architektur obliczeniowych do wspólnej realizacji obliczen.

Opracowana metodologia jest wynikiem sprawowanej opieki naukowej nad doktorantemPolitechniki Czestochowskiej, mgr inz. Kamilem Halbiniakiem. Osiagniete wyniki badan sta-nowia doskonały punkt wyjscia dla kontynuacji podjetych prac badawczych w formie zadanobecnie realizowanych w ramach pracy doktorskiej.

a) b)

Rysunek 13: Róznice w udziale fazy stałej (a) oraz w koncentracji domieszki (b) pomiedzywynikami symulacji dla wersji oryginalnej oraz zaproponowanej

19

Page 21: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

C) Modele i algorytmy dystrybucji obciazenia w architekturach wielo- i masywnie wie-lordzeniowych oraz klastrach komputerowych

Moim trzecim osiagnieciem naukowym jest opracowanie modeli i algorytmów dystrybucji ob-ciazenia w architekturach wielo- i masywnie wielordzeniowych, z uwzglednieniem klastrówkomputerowych. Powadzone prace realizowane były przy scisłej współpracy z grupa badawczaHeterogeneous Computing Laboratory University College Dublin w Irlandii (HCL-UCD), kie-rowana przez dra Alexey Lastovetsky. Efektem prowadzonych wspólnie badan sa nastepujaceoryginalne wyniki:

• Model zwiekszania wydajnosci obliczen w homogenicznych architekturach równoległychpoprzez nierównomierne obciazenie jednostek przetwarzajacych,

• Heurystyczny algorytm mapowania obliczen równoległych w obrebie homogenicznychklastrów obliczeniowych z heterogeniczna infrastruktura sieciowa.

C.1) Model zwiekszania wydajnosci obliczen w homogenicznych architekturach równo-ległych poprzez nierównomierne obciazenie jednostek przetwarzajacych

Równowazenie obciazenia jest powszechnie stosowana metoda zwiekszania wydajnosci obli-czen w architekturach równoległych, poniewaz zbalansowana aplikacja nie traci czasu w punk-tach synchronizacji i wymiany danych. Praca [A6], bedaca wynikiem mojego stazu na Uniwer-sytecie w Dublinie w 2015 r., stanowi wyzwania dla uniwersalnosci tej techniki w odniesieniudo optymalizacji wydajnosci aplikacji równoległych.

Zaproponowane podejscie do zwiekszania wydajnosci obliczen zostało zweryfikowane naprzykładzie algorytmu MPDATA. U jego podstaw tkwi model FPM (ang. Functional Perfor-mance Model), którego autorami sa naukowcy wchodzacy w skład grupy badawczej HCL-UCD.Model FPM [2, 3] umozliwia zbudowanie funkcji predkosci si(x), która reprezentuje predkoscSi danego procesora (ang. speed of processor) jako współczynnik wydajnosci badanej aplikacjiosiagalny dla róznych problemów o rozmiarze x. Natomiast postac funkcji predkosci dla danegoprocesora jest okreslana jako si(x) = x

ti(x), gdzie ti(x) odnosi sie do czasu wykonania obliczen

dla problemu o rozmiarze x.Wygenerowanie profilu wydajnosciowego dla nowej wersji kodu MPDATA wymagało scha-

rakteryzowania sposobu wykorzystania jednostek obliczeniowych. Kluczowa role odegrała tu-taj opisana wczesniej metoda izolowania obliczen. Konstrukcja opracowanej metody zakładarównoległe wykonywanie obliczen przez odpowiednio wyselekcjonowane grupy rdzeni, którecechuje zazwyczaj ta sam liczba rdzeni. Przykładem tego jest 60-rdzeniowa architektura IntelMIC pierwszej generacji, która umozliwia uzyskanie najlepszej wydajnosci obliczen z uzyciem4 grup składajacych sie z 15 rdzeni [A3,A6]. Poniewaz w tym przykładzie wszystkie grupycechuje identyczna liczba rdzeni, domena obliczeniowa dzielona jest na równe pod-domeny,a kazda z utworzonych pod-domen przetwarzana jest z uzyciem innej grupy 15 rdzeni. Zasto-sowana struktura kodu MPDATA przyczyniła sie do zdefiniowania funkcji predkosci w celureprezentacji predkosci poszczególnych grup rdzeni, wspólnie realizujacych obliczenia.

Zbudowanie profilu wydajnosciowego dla aplikacji MPDATA wiazało sie równiez z okre-sleniem funkcji predkosci w odniesieniu do trzech parametrów n, m i l, których wartosci deter-minuja rozmiar siatki obliczeniowej. Na podstawie przeprowadzanych badan [A6] wykazano,ze wartosci parametrów n i l nie wpływaja na ostateczny kształt funkcji predkosci. Zatem, fi-nalna postac funkcji predkosci dla aplikacji MPDATA została uzalezniona jedynie od wartosciparametru m.

Rys. 14 ilustruje profil wydajnosciowy aplikacji MPDATA utworzony dla koprocesorówIntel Xeon Phi z wykorzystaniem modelu FPM. Otrzymany kształt funkcji predkosci obrazu-je uzyskiwana wydajnosc obliczen dla róznych rozmiarów siatek obliczeniowych. Im wartosc

20

Page 22: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Sp

eed

100 108 116 124 132 140

n

m

132124

108

140

116

Problem size

a)

Sp

eed

120 m

50

200

250

Problem size

Savg(x)

112

1280

b)

Rysunek 14: Profil wydajnosciowy aplikacji MPDATA utworzony dla pojedynczego zespołu15 rdzeni wchodzacych w skład koprocesora Intel Xeon Phi (a), jak równiez jego usrednionapostac (b)

wyznaczonej predkosci S = s(x) jest wyzsza dla danej grupy rdzeni, tym efektywnosc obliczendla rozmiaru siatki n×m× l, gdzie x = m, jest równiez wyzsza.

Analizujac kształt funkcji predkosci wygenerowany dla aplikacji MPDATA (Rys. 14b),mozna zauwazyc, ze dla wielu róznych wartosci parametru m wyznaczana predkosci S cechujesie mniejsza wartoscia anizeli predkosc uzyskana dla x = m+Δm oraz x = m−Δm. Przykłado-wo, przetwarzanie obliczen dla rozmiaru 120×120×128 (m= 120) cechuje sie nizszym współ-czynnikiem predkosci niz obliczenia realizowana dla rozmiarów siatek 120×(120+Δm)×128jak i 120× (120−Δm)× 128, gdzie Δm = 8. Oznacza to, ze poszczególne czasy obliczen za-równo dla rozmiarów siatki n× (m+Δm)× l, jak i n× (m−Δm)× l beda krótsze, niz czasprzetwarzania obliczen dla rozmiaru n×m× l.

Własciwosc ta została wykorzystana do opracowania innowacyjnej metody poprawy wydaj-nosci aplikacji [A6] poprzez zastosowanie nierównomiernego podziału obliczen miedzy gru-pami rdzeni (Rys. 15). Przykładowo, realizacja obliczen z wykorzystaniem architektury IntelMIC dla siatki o rozmiarze 240×240×128 wymaga jej podziału na 4 równe czesci o rozmia-rze 120× 120× 128. Przeprowadzona analiza wykazała jednak, ze wykonywanie obliczen dlasiatki o rozmiarze m = 120 cechuje sie relatywnie niskim współczynnikiem predkosci. Zwiek-szenie efektywnosci obliczen w tym przypadku wiaze sie z ponowna redystrybucja domeny nadwie pod-domeny o rozmiarach 120×128×128 oraz kolejne dwie pod-domeny o rozmiarach120×112×128. Zastosowanie nierównomiernego podziału obliczen umozliwia kazdej grupierdzeni prowadzenie obliczen z wyzszym współczynnikiem predkosci, co w rezultacie zwiekszawydajnosc obliczen o 15%.

12

8

T015 cores

T215 cores

T115 cores

120 120

120

120T3

15 cores

T015 cores

T215 cores

128

T115cores

112

120T3

15cores

12012

8

Rysunek 15: Koncepcja nierównomiernego podziału obliczen domeny aplikacji MPDATA orozmiarze 240×240×128

21

Page 23: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Dodatkowo, do zautomatyzowania procesu poszukiwania optymalnej dystrybucji obliczen,został zaproponowany ogólny algorytm redystrybucji obciazenia q pomiedzy p procesorami,charakteryzujacymi sie współczynnikiem funkcji predkosci s(x) (Algorytm 2). W przypadkuaplikacji MPDATA, pozwala on dobrac najlepsza wartosc dla parametru Δm, którego poczatko-wa wartosc jest równa Δm = 0. Wraz z kolejnymi iteracjami kodu MPDATA wartosc parametruΔm jest modyfikowana do poziomu, który gwarantuje uzyskanie najlepszej wydajnosci obli-czen.

Algorytm 2 Algorytm redystrybucji obciazenia q pomiedzy p procesorami charakteryzujacymisie współczynnikiem funkcji predkosci s(x)

xropt = xlopt = xr = xl =qp

tmin =qp

s( qp )

repeatxr = xr +Δxxl = xl −Δxt = max( xr

s(xr), xl

s(xl))

if t < tmin thentmin = txropt = xrxlopt = xl

end ifuntil xr < q & xl > 0

Struktura Algorytmu 2 została właczona w kod aplikacji MPDATA, umozliwiajac samo-czynne dostrajanie obliczen w celu uzyskania jak najlepszej wydajnosci. W trakcie wykonaniapoczatkowych kroków czasowych aplikacji MPDATA, utworzony w ten sposób mechanizmgeneruje funkcje predkosci, badajac wydajnosc aplikacji dla róznych wartosc parametru Δm.W rezultacie zbudowanej fragmentarycznej funkcji predkosci, dobierana jest optymalna wartoscparametru Δm, pozwalajac tym samym na wykonanie pozostałych kroków czasowych aplika-cji MPDATA z jak najlepiej dobrana dystrybucja. Rys. 16 ilustruje zasade działania opisanegomechanizmu.

104 136

Speed

ProblemSize

T0 T1

T2 T3

136 10416

tota

l ti

me

∆m0

4th redistribution, ∆m=16

108 132

Speed

ProblemSize132 108

T0 T1

T2 T3∆m

120

3rd redistribution, ∆m=12

tota

l ti

me

112 128

Speed

ProblemSize128 112

T0 T1

T2 T3∆m

80

2nd redistribution, ∆m=8

tota

l ti

me

ProblemSize120

Speed

120 120

T0 T1

T2 T3∆m

0

tota

l ti

me

116 124

Speed

ProblemSize124 116

T0 T1

T2 T3

1st redistribution, ∆m=4

∆m40

tota

l ti

me

Rysunek 16: Koncepcja mechanizmu samoczynnego dostrajania podziału domeny aplikacjiMPDATA

22

Page 24: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

C.2) Heurystyczny algorytm mapowania obliczen równoległych w obrebie homogenicz-nych klastrów obliczeniowych z heterogeniczna infrastruktura sieciowa

Tematyka moich prac badawczych zwiazana była równiez z opracowaniem metody równowa-zenia obciazenia w obrebie klastrów HPC. Podjeta tematyka badawcza została zainicjowanaw trakcie mojego stazu na uniwersytecie w Dublinie realizowanego w ramach Akcji COST nrIC1305 w 2016 r., a jej rezultaty zostały zaprezentowane w publikacji [A5]. W szczególnosci,zakres wspólnie prowadzonych prac obejmował rozwiazanie problemu mapowania obliczenrównoległych na wezły obliczeniowe klastrów z heterogeniczna infrastruktura sieciowa, bioracpod uwage :

• heterogeniczna struktura sieci i jej wydajnosc,

• przepływ danych niezbednych do wykonania obliczen badanej aplikacji.

Przedmiotem prowadzonych badan była aplikacja MPDATA, której kod został rozbudowanyo mozliwosc wykonywania obliczen z uzyciem klastrów cechujacych sie modelem programo-wania z pamiecia rozproszona. Rozbudowa kodu zwiazana była z wdrozeniem warstwy komu-nikacyjnej realizujacej wymiane danych niezbednych do wykonywania obliczen z wykorzysta-niem homogenicznych wezłów obliczeniowych.

W efekcie wprowadzonych zmian domena obliczeniowa aplikacji MPDATA została podzie-lona w dwóch wymiarach na równe czesci (Rys. 17a). Kazda z utworzonych czesci przetwa-rzana jest z wykorzystaniem pojedynczego wezła obliczeniowego, zgodnie z przedstawionaw Autoreferacie metodologia. Zastosowanie dwu wymiarowej dekompozycji obliczen wiazałosie równiez z zapewnieniem odpowiedniej komunikacji miedzy wezłami w dwóch kierunkach:pionowym i pozimowym, co zostało zobrazowana na Rys. 17b i 17c.

a) c)b)

n(i)(j) n(i)(j+1)

n(i+1)(j+1)n(i+1)(j)

halo regions

native regions data bar of size ( 1 × jhalo × l )

data slice of size ( ihalo × (jhalo + mB + jhalo) × l )

data transfers from native to halo regions

Rysunek 17: Schemat komunikacyjny aplikacji MPDATA: a) 2-wymiarowa dekompozycja do-meny miedzy wezłami obliczeniowymi: ni j,ni j+1, ...; jak równiez schemat przepływu danychmiedzy wezłami realizowana w pierwszym (a) oraz drugim (b) wymiarze dekompozycji

Analizujac zastosowany schemat komunikacyjny okazało sie, ze wydajnosc komunikacji dlaaplikacji MPDATA jest szczególnie wrazliwe na sposób mapowania obliczen na wezły klastra.Przeprowadzona analiza wykazała, ze koszt komunikacji w pionowym kierunku (Rys. 17b) jestwiekszy anizeli w poziomym (Rys. 17b), nawet w przypadku homogenicznej infrastruktury sie-ciowej. Cecha ta znacznie komplikuje rozwiazanie problemu dekompozycji aplikacji MPDATA

23

Page 25: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

na pod-domeny oraz mapowania tych pod-domen na wezły obliczeniowe klastra z heterogenicz-na infrastruktura sieciowa w sposób, który minimalizuje koszt komunikacji miedzy wezłami zuwzglednieniem wszystkich istotnych poziomów hierarchii sieciowej.

Oczywistym rozwiazaniem tego problemu byłoby przetestowanie wszystkich mozliwychkonfiguracji dystrybucji domeny aplikacji MPDATA w sposób empiryczny. Jednakze koszt em-pirycznego poszukiwania najlepszego rozwiazania w przypadku aplikacji MPDATA okazujesie zbyt duzy. Aby ograniczyc koszty poszukiwania, został zaprojektowany heurystyczny algo-rytm (Algorytm 3), którego zadaniem jest wyznaczenie optymalnego lub prawie optymalnegoschematu mapowania pod-domen na dostepne wezły klastra z heterogeniczna infrastruktura sie-ciowa.

Algorytm 3 Heurystyczny algorytm mapowania obliczen MPDATA na wezły obliczenioweklastrów z heterogeniczna infrastruktura sieciowa

Istota opracowanego algorytmu jest oszacowanie kosztów komunikacji dla róznych kon-figuracji podziału domeny. Poniewaz utworzony kod MPDATA cechuje sie asymetryczna ko-munikacja (Rys. 17), zostały zaprojektowane dwie funkcje kosztów [A6], których zadaniemjest ocena kosztów komunikacji realizowanej zarówno w pierwszym wymiarze dekompozycjiobliczen (Rys. 17b):

costV =c

∑j=1

�w×

r

∑i=1

1bV (Qi j,Qi,( j+1)%r

�,

24

Page 26: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

jak i w drugim (Rys. 17c):

costH =r

∑i=1

�h×

c

∑j=1

1bH(Qi j,Qi,( j+1)%c)

�.

Głównym kryterium jakosci w zaproponowanym algorytmie jest szacowany czas komunika-cji dla danej konfiguracji A. Jego wartosc jest reprezentowana przez dwa parametry: (costH(A)oraz costV (A)). Rozwiazania badanego problemu zostało sprowadzone do wyselekcjonowaniakonfiguracji o minimalnej wartosci dla sumy tych dwóch parametrów:

costH(A)+ costV (A)→ min .

Zaproponowany algorytm pozwala nie tylko na zredukowanie komunikacji pomiedzy pod-sieciami, lecz równiez wykorzystuje mozliwie najszybsze sciezki połaczen pomiedzy nimi. Po-wyzsza heurystyka jest efektywne dla aplikacji z dwu-wymiarowymi topologiami komunika-cyjnymi dla sieci heterogenicznych. Nalezy równiez podkreslic, ze koncowy algorytm nie wy-maga uruchamiania samej aplikacji w celu porównania kosztów komunikacji dla róznych kon-figuracji. Zamiast tego, wykorzystuje on informacje o topologi sieci i strukturze komunikacjibadanej aplikacji. Zastosowania opracowanego algorytmu pozwoliło na poprawe wydajnosciaplikacji MPDATA w przypadku nie tylko heterogenicznych, lecz równiez w pełni homoge-nicznych sieci komunikacyjnych. Skutecznosc opracowanego algorytmu została zweryfikowanaw praktyce z wykorzystaniem infrastruktury HPC udostepnianej w ramach francuskiego pro-jektu Grid’5000.

4.3.3 Podsumowanie

Badania przedstawione w ramach cyklu moich prac [M1,A1-A10] wnosza oryginalny wkładw rozwój Informatyki w zakresie metod i algorytmów zrównoleglania i dystrybucji obliczenw architekturach wielo- i masywnie wielordzeniowych. Tematyka prac przedstawionych w ra-mach osiagniecia naukowego jest skoncentrowana na metodologii dostosowywania istniejacychkodów aplikacji naukowych do szerokiej gamy nowoczesnych systemów komputerowych, ba-zujacych na procesorach oraz akceleratorach róznych firm. Strategicznym celem prowadzonychprzeze mnie prac naukowo-badawczych jest równiez dazenie do zapewnienia przenosnosci rów-noległych kodów badanych aplikacji, pomiedzy obecnymi, jak i pojawiajacymi sie systemamiobliczeniowymi, z zachowaniem wysokiej wydajnosci obliczen. Moje najwazniejsze osiagnie-cia naukowe uzyskane w wyniku prowadzonych prac obejmuja:

• Badanie wpływu własciwosci nowoczesnych architektur komputerowych na zwieksze-nie efektywnosci obliczen w aplikacjach naukowych oraz identyfikacja ograniczen dlauzyskanie wysokiej wydajnosci obliczen równoległych, ze szczególnym uwzglednieniemtakich kluczowych elementów jak: hierarchiczny podsystem pamieciowy, masywna rów-noległosc na poziomie rdzeni, przetwarzanie wektorowe czy architektura sieci.

• Synteze i interpretacje róznych scenariuszy obliczeniowych i ich porównanie, z uwzgled-nieniem róznych generacji procesorów oraz akceleratorów, co umozliwiło wyznaczeniekluczowych kierunków zwiekszania efektywnosci obliczen równoległych w systemachwielo- i masywnie wielordzeniowych.

• Opracowanie oryginalnych strategii równoległej organizacji obliczen równoległych, ma-jacych na celu poszukiwanie kompromisu oraz synergii miedzy obliczeniami i komuni-kacja. W szczególnosci, zaproponowana hierarchiczna dekompozycja heterogenicznychobliczen typu stencil umozliwiła wysokowydajna adaptacje aplikacji naukowych do wła-sciwosci architektur wielo- i masywnie wielordzeniowych, a takze wieloprocesorowycharchitektur ccNUMA.

25

Page 27: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

• Zaprojektowanie innowacyjnej strategi i algorytmu synchronizacji obliczen. Dzieki zasto-sowaniu podejscia data-flow pozwalaja one istotnie zmniejszyc koszty synchronizacji warchitekturach wielo- i masywnie wielordzeniowych, dodatkowo umozliwiajac redukcjewpływu nierównomiernego obciazenia rdzeni na wydajnosc aplikacji.

• Opracowanie oryginalnych metod i algorytmów projektowania, realizacji i optymalizacjiaplikacji numerycznych dla przenosnego i skalowalnego programowania równoległego.Uwzgledniajac ograniczenia narzucane przez hierarchiczna strukture pamieci i podsys-tem komunikacji, opracowane metody i algorytmy zmierzaja do jak najbardziej optymal-nego wykorzystania mozliwosci przetwarzania wielordzeniowego i wektorowego orazzapewnienia przenosnosci równoległych kodów aplikacji z zachowaniem wysokiej wy-dajnosci obliczen.

• Zaproponowanie metodyki adaptacji aplikacji naukowych do architektur hybrydowych,wraz z opracowaniem elastycznych metod zarzadzania obliczeniami równoległymi. Za-proponowane metodyki pozwalaja na uwzglednienie charakterystyk wielordzeniowychprocesorów CPU ogólnego przeznaczenia i zapewnienie ich efektywnego współdziałaniaz akceleratorami obliczeniowymi, a w szczególnosci akceleratorami Intel Xeon Phi orazprocesorami graficznymi GPU.

• Opracowanie oryginalnych modeli i algorytmów dystrybucji obciazenia oraz samoadap-tujacych sie mechanizmów redystrybucji obciazenia dla obliczen numerycznychw architekturach wielo- i masywnie wielordzeniowych oraz klastrach obliczeniowychz heterogeniczna infrastruktura sieciowa. W szczególnosci, zaproponowane podejscie dozwiekszania wydajnosci obliczen w homogenicznych architekturach równoległych wy-korzystuje model FPM do wyznaczania pozadanego podziału obliczen prowadzacegodo minimalizacji czasu wykonania aplikacji równoległej, któremu nie musi towarzyszycrównomierne obciazenie jednostek przetwarzajacych. Powyzszy wyniki stanowi wyzwa-nia dla uniwersalnosci techniki równowazenia obciazenia jako powszechnie stosowanejmetody zwiekszania wydajnosci obliczen równoległych.

Oryginalnosc i znaczenie uzyskanych wyników

Opracowane metody i algorytmy stanowia oryginalny wkład w rozwój wiedzy ogólnej w za-kresie zapewnienia wysokiej wydajnosci obliczen, wykorzystywanej przez projektantów archi-tektur i aplikacji nowej generacji. Istotnym wynikiem prowadzonych badan jest równiez zbióreksperckiej wiedzy z obszaru efektywnego wykorzystania systemów komputerowych, o istot-nym znaczeniu praktycznym dla twórców aplikacji naukowych.

Rezultaty prowadzonych prac powinny pomóc w zrozumieniu ewolucji rozwoju kompute-rów i aplikacji, m.in. poprzez nakreslenie nowych abstrakcji programistycznych dla równole-głych srodowisk obliczeniowych. W szczególnosci rezultaty te znajduja swoje zastosowanie,nie tylko w dyscyplinie naukowej jaka jest informatyka, ale takze w takich dziedzinach, jakfizyka, chemia, oraz medycyna czy tez innych dyscyplinach naukowych, w których koniecznesa rozbudowane symulacje komputerowe.

Efektem wykonanej przeze mnie pracy jest umozliwienie twórcom aplikacji naukowychpełniejszego wykorzystania dostepnej mocy obliczeniowej. Znakomitym tego przykładem jestbadana aplikacja numerycznego modelowania procesu krzepniecia, dla której uzyskanie dzie-sieciokrotnego zwiekszenia wydajnosci obliczen stwarza mozliwosc przeprowadzania znaczniebardziej złozonych symulacji, niz kiedykolwiek wczesniej było to mozliwe.

26

Page 28: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

5 Omówienie pozostałych osiagniec naukowo-badawczych

5.1 Omówienie realizowanych projektów o charakterze naukowymKoordynowanie prac naukowo-badawczych w ramach projektu "Laboratorium pilotazowesystemów masywnie wielordzeniowych (MICLAB)", NCBiR, POIG.02.03.00-24-093/13-00

Istotnym elementem mojej aktywnosci naukowej było pełnienie roli koordynatora prac badaw-czych realizowanych w ramach projektu MICLAB. Tematyka prowadzonych prac była powia-zana z moim osiagnieciem naukowym, a jej zakres obejmował koordynowanie dwóch z czterechzadan projektu MICLAB:

Zadanie 1: Wytworzenie infrastruktury sprzetowo-programowej oraz wdrozenie i eksploatacjasrodowiska zarzadzajacego,

Zadanie 3: Prace eksperymentalno-rozwojowe w zakresie wykorzystania stworzonych rozwia-zan w aplikacjach uzytkowników.

Dodatkowo, w drugiej fazie wykonania projektu MICLAB pełniłem funkcje z-cy kierownika.Strategicznym celem projektu było stworzenie elektronicznego laboratorium, czyli wirtual-

nego miejsca, w którym ogólnokrajowa społecznosc naukowo-badawcza moze badac mozliwo-sci wykorzystania i okreslac kierunki zastosowania najnowszych, masywnie wielordzeniowycharchitektur obliczeniowych w wiodacych dziedzinach nauki. Realizacja tego celu wiazała sieze zbudowaniem, wdrozeniem i udostepnieniem uzytkownikom pilotazowej instalacji opartej omasywnie wielordzeniowe koprocesory obliczeniowe Intel Xeon Phi.

Kluczowym elementem projektu było zapewnienie uzytkownikom projektu gwarancji ła-twego i szybkiego dostepu zarówno do zasobów sprzetowo-programowych, jak i wiedzy eks-perckiej oraz wsparcia merytorycznego i technicznego. W ramach projektu MICLAB prowa-dzono szereg prac rozwojowych o róznorodnej tematyce badawczej w zakresie dostosowaniaaplikacji uzytkowników do systemów masywnie wielordzeniowych Intel Xeon Phi. Prowa-dzone prace odbywały sie we współpracy z naukowcami z 14 instytucji naukowo-badawczychw Polsce.

Ze wzgledu na złozona architekture platformy obliczeniowej, jak i róznorodne charak-terystyki obliczeniowe poszczególnych aplikacji, proces ten czesto wymagał indywidualne-go podejscia. Ze wzgledu na doswiadczalny charakter projektu uzytkownicy otrzymywali po-moc w trakcie wdrazania ich aplikacji. Doswiadczony zespół wykonawców, kierowany przezprof. dr hab. inz. Romana Wyrzykowskiego, zapewniał zaplecze niezbednej wiedzy teoretycz-nej i praktycznej.

W trakcie trwania projektu został przeprowadzony szereg działan, które przyczyniły siedo podniesieniem kwalifikacji uzytkowników ze srodowisk naukowo-badawczych w zakresiewykorzystania architektur masywnie wielordzeniowych opartych o architekture Intel Xeon Phi.Przykładem tego jest zorganizowany i przeprowadzony cykl 4 szkolen oraz 1 seminarium dlaponad 70 uczestników ze srodowisk naukowo-badawczych.

Wykonywanie prac naukowo-badawczych w ramach projektu "Metody i algorytmy orga-nizacji obliczen w klasie anelastycznych modeli numerycznych dla przepływów geofizycznychna nowoczesnych architekturach komputerowych z realizacja w modelu EULAG", NCN,nr UMO-2011/03/B/ST6/03500

Kolejnym zagadnieniem realizowanym w ramach mojej aktywnosci naukowej było wykony-wanie prac badawczych w ramach projektu NCN (program Opus). Koncepcja realizacji pro-jektu oparta została o analize modelu EULAG, którego wersja referencyjna został zaadaptowa-na jedynie do konwencjonalnych, masywnie równoległych superkomputerów. Przeprowadzona

27

Page 29: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

analiza pozwoliła na okreslenie kierunków rozwoju metod i algorytmów adaptacji klasy ane-lastycznych modeli hydrodynamicznych do nowoczesnych heterogenicznych i hybrydowycharchitektur HPC. Wsród tych architektur zostały wyróznione akceleratory obliczeniowe GPUoraz Intel Xeon Phi (Intel MIC), procesory CPU oraz klastry komputerowe z GPU.

Przewodnim obszarem realizowanych przeze mnie prac było opracowanie metod dekompo-zycji danych i równowazenia obciazenia w celu dostosowania obliczen w modelu EULAG doarchitektur hybrydowych w zakresie algorytmu adwekcji. Opracowane przeze mnie rozwiaza-nia stanowiły istotny wkład dla realizacji celów projektu, umozliwiajac jak najpełniejsza eks-ploatacje architektur heterogenicznych i hybrydowych w badaniach przepływów geofizycznychz wykorzystaniem modelu EULAG. Rezultaty prowadzonych prac zostały zawarte w artykułach[A1-A3,M1] wchodzacych w skład mojego osiagniecia naukowego.

5.2 Współpraca z partnerami naukowymi i przemysłowymiWspółpraca z krajowymi i miedzynarodowymi grupami badawczymi

W celu zapewnienia jak najwyzszej jakosci opracowywanych rozwiazan, prowadzone pracebadawczo-naukowe realizowane były przy scisłej współpracy z czołowymi grupami badaw-czymi w dziedzinie obliczen wielkiej skali. Na szczególne wyróznienie zasługuje współpracazarówno z krajowymi, jak i miedzynarodowymi partnerami, a w szczególnosci:

• Współpraca z krajowymi grupami badawczymi, a w szczególnosci IChB PAN – Poznan-skie Centrum Komputerowo Sieciowe oraz Instytut Meteorologii i Gospodarki Wodnejw Warszawie pozwoliła na realizacje projektu NCN dotyczacego modelu EULAG (2013-2015), którego rezultaty zostały przedstawione w serii wspólnych publikacji.

• Rozpoczeta w 2014 współpraca z grupa badawcza z University College Dublin w Irlandii,kierowana przez dra Alexey Lastovetsky, przyczyniła sie do opracowania innowacyjnychmetod równowazenia obciazenia, których efekty zostały przedstawione m.in. w czasopi-smie IEEE Transactions on Parallel and Distributed Systems.

• Nawiazana w 2016 roku współpraca z Centrum Superkomputerowym IT4InnovationsUniwersytetu Technicznego w Ostrawie (Republika Czeska) umozliwiła prowadzenieprac badawczo-rozwojowych w zakresie efektywnego wykorzystania nowoczesnych sys-temów obliczeniowych, opartych o architekturach SGI UV 2000 oraz SGI UV 3000. Re-zultaty wspólnie prowadzonych badan zostały zawarte w pracach [A7,A10].

• Nawiazana w 2017 roku współpraca z grupa badawcza kierowana przez Dra Georga Ha-gera z Uniwersytetu w Erlangen (Niemcy) w zakresie modelowania wydajnosci aplikacjinaukowych, której rezultaty przyczyniły sie do przeprowadzenia szczegółowej analizywydajnosciowej opracowanych metod i algorytmów.

Współpraca z firmami Intel i Gambit

Ze wzgledu na wysoki stopien złozonosci badanego problemu, realizacja prowadzonych pracbadawczych wymagała takze współpracy z wiodacymi firmami o globalnym zasiegu, w tymz firma Intel. W szczególnosci, wieloletnia współpraca z dr hab. Pawełem Gepnerem, RobertemAdamskim oraz dr Piotrem Sasinowskim (Intel Technology Poland, Intel Platform & Techno-logy Enabling Group), przyczyniła sie do wspólnej realizacji wielu działan badawczych, w tymwymiany eksperckiej wiedzy i doswiadczenia, udostepniania nowoczesnych technologii i in-frastruktury, wspólnych publikacji, wsparcia w trakcie realizacji projektów oraz innych dzia-łan w obszarze powstajacych architektur masywnie wielordzeniowych oraz narzedzi programi-stycznych.

28

Page 30: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

Istotnym partnerem jest równiez firma Gambit Centrum Oprogramowania i Szkolen, Kra-ków, która od wielu lat umozliwia wymiane eksperckiej wiedzy w zakresie nowoczesnych na-rzedzi programistycznych i oprogramowania, jak równiez prowadzenie i organizowanie wspól-nych szkolen.

5.3 Opieka naukowa nad doktorantemWaznym doswiadczeniem w czasie mojej pracy było sprawowanie opieki naukowej nad dok-torantem, mgr inz. Kamilem Halbiniakiem. Głównym zadaniem przewidzianym do realizacjiw ramach pracy doktorskiej jest opracowanie metody zrównoleglenia i równowazenia obciaze-nia dla obliczen numerycznych w architekturach hybrydowych z akceleratorami obliczeniowy-mi Intel MIC. Szczegółowy zakres prowadzonych prac badawczych obejmuje:

• Opracowanie metodyki adaptacji aplikacji naukowych do architektur hybrydowych z ak-celeratorami Intel MIC, bez potrzeby znacznej modyfikacji kodu zródłowego aplikacji.

• Zbadanie efektywnosci zaproponowanej metodyki na przykładzie aplikacji do modelo-wania krzepniecia.

• Systematyczna ewaluacja heterogenicznych srodowisk programowania równoległego dlaarchitektur hybrydowych CPU–MIC z uwzglednieniem zarówno wydajnosci obliczen,jak i produktywnosci tworzenia oprogramowania.

• Opracowanie mechanizmu równowazenia obciazenia w aplikacji do modelowania krzep-niecia charakteryzujacej sie zmienna intensywnoscia obliczen.

• Opracowanie oraz zbadanie metod dostosowania aplikacji do modelowania krzepnieciado architektur hybrydowych z akceleratorami Intel MIC róznych generacji.

Wspólnie realizowana aktywnosc naukowa-badawczo przyczyniła sie do opracowania szeregumetod i algorytmów przedstawionych w serii wartosciowych prac [7, 1, 8] oraz [A3,A4].

29

Page 31: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych

6 Wskazniki aktywnosci badawczej i publikacyjnej

Tabela 2: Wskazniki bibliometryczne uzyskane dn. 29.05.2018

Statystyki Web of Science Scopus Google Scholar

1Liczba prac, 14 16 24

w tym po doktoracie (2013–2018) 11 12 20

2Liczba cytowan, 76 119 193

w tym bez samocytowan 50 72 116

3 Indeks Hirsha 5 7 10

4Sumaryczny 5-letni współczynnik wpływu*, 12,855

w tym po doktoracie 11,465

*zgodny z rokiem opublikowania oraz nieuwzgledniajacy artykułów w trakcie recenzji

Tabela 3: Zestawienie dorobku naukowego uzyskanego przed doktoratem w latach 2008–2012oraz po doktoracie w latach 2013 – 2018

A Statystyki publikacjiPrzed Po

doktoratem doktoracie

1 Monografie 0 1

2 Artykuły w czasopismach indeksowanych w bazie JCR 1 6

3 Artykuły wysłane do recenzji (ind. w bazie JCR) – 3

4 Artykuły w czasopismach spoza bazy JCR 0 1

5Publikacje w materiałach konferencji miedzynarodowych

2 6indeksowane w bazie Web of Science

6 Pozostałe publikacje w materiałach konf. miedzynarodowych 1 3

BUdział w projektach badawczych

U W K U W K(U-Uczestnik, W-Wykonawca, K-Kierownik)

1 Projekty NCN – 1 – – 2 1

2 Projekty NCBIR (POIG) – 1 – – – 1*

3 Projekty miedzynarodowe COST Action 1 - – 1 – –

C Wygłoszone referaty na miedzynarodowych konferencjach 6 16

DStaze zagraniczne realizowane w ramach

1 3Akcji COST nr IC0805 oraz nr IC1305

*Zastepca kierownika

30

Page 32: Spis tre´sci - Politechnika Częstochowska · Spis tre´sci 1 Dane osobowe 2 2 Posiadane dyplomy i stopnie naukowe 2 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych