You are on page 1of 13

TECHNIKA I TECHNOLOGIA

Dr hab. inż. Tadeusz MACIAK


mgr inż. Przemysław CZAJKOWSKI
Wydział Informatyki Politechniki Białostockiej

FDS. ANALIZA PROCESU OBLICZENIOWEGO


SYMULACJI POŻARU W TUNELU

FDS. Analysis of the computational simulation of fire in the tunnel.


Streszczenie
W pracy, na przykładzie przeprowadzonej symulacji pożaru, porównano czasy obliczeń otrzymane z użyciem różnej ilości
rdzeni mikroprocesora. Rozważany przypadek dotyczył jednej nitki tunelu samochodowego o długości 4000 m. Źródłem
ognia była cysterna z benzyną, dla której założono moc źródła ognia 100 kW. Obliczenia dotyczyły szybkości rozprzestrze-
niania się pożaru i badania skuteczności działania różnych rozwiązań wentylacji. Otrzymane przebiegi wielkości fizycznych
typu temperatura, czy stężenie niebezpiecznych gazów miały drugorzędne znaczenie i nie były poddawane analizie oraz
weryfikacji. Istotnym z punktu widzenia pracy był natomiast czas wykonania symulacji oraz przyspieszenie uzyskane przez
zastosowanie wielu komputerów do obliczeń. Obliczenia zostały wykonane dla 4 przypadków: a/ stały rozmiar zadania do
wykonania, rosnąca liczba procesów wykonujących te same zadanie, b/ stały rozmiar zadania do wykonania, różne liczby
wątków wykonujących obliczenia, c/ rosnący rozmiar zadania obliczeniowego, rosnąca liczba procesorów wykonujących
zadanie, d/ rosnący rozmiar zadania obliczeniowego, rosnąca liczba wątków wykonujących obliczenia. Do oceny otrzyma-
nych czasów wykonania różnych przypadków symulacji zastosowano miary przyspieszenia obliczeń przy stałej wielkości
zadania, wzrostu wydajności systemu przy stałej wielkości zadania oraz wzrostu wydajności systemu przy rosnącej wielko-
ści zadania. W analizowanym przypadku przestrzeń symulacji została podzielona na n domen obliczeniowych wzdłuż osi
najdłuższego boku tunelu. Obliczenia dla jednej domeny obliczeniowej zostały wykonane przez wersję szeregową FDS,
która korzystała z jednego rdzenia procesora. W przypadkach z liczbą domen obliczeniowych większą od jedności, oblicze-
nia zostały wykonane przez wersję równoległą FDS i używały różnej liczby rdzeni. Dla każdej z domen obliczeniowych,
obliczenia przeprowadzał osobny proces. Każdy z procesów był przydzielony do osobnego rdzenia procesora. Do komunika-
cji między procesami wykorzystano mechanizm Message Passing Interface (MPI), który organizował komputer w logiczną
maszynę z pamięcią rozproszoną. Odmiana FDS ograniczająca się do wykorzystania do obliczeń wielu rdzeni tego samego
procesora została napisana przy użyciu dyrektyw OpenMP, natomiast wersja równoległa, która do obliczeń może używać
zarówno komputerów połączonych w sieć, jak i wielu rdzeni jednego procesora korzysta z wywołań funkcji MPI. Wyniki
przeprowadzonych eksperymentów numerycznych pokazały, że oba użyte mechanizmy przyspieszają obliczenia symulacji
w stosunku do wykonania przez jeden rdzeń procesora choć nie w sposób liniowy. Czasy wykonania symulacji przez wer-
sję OpenMP były znacząco wyższe niż MPI. Przebadano również skalowalność systemu rozumianego jako komputer oraz
program. Również i w tym przypadku otrzymane wyniki wykazały, że lepiej zachowuje się wersja MPI. Wersja OpenMP
okazała się nie skalowalną w przeprowadzonych eksperymentach. Porównując szybkości wykonywanych obliczeń na pro-
cesorach pochodzących od dwóch wiodących producentów Intela I AMD zauważono, że na procesorach Intel symulacje są
wykonywane zdecydowanie szybciej.

Summary
In this paper, on the chosen example of the simulation of fire, compared the calculation times obtained using different
number microprocessor cores. Considered case concerned a thread car tunnel with a length of 4000 m. The source of
the fire was a tank of gasoline, which was founded for the fire power of 100 kW. Calculations related to the speed of the
spread of the fire and test the effectiveness of various ventilation solutions. The resulting waveforms physical quantities
such temperature, and the concentration of dangerous gases were of secondary importance and were not analyzed and
verified. Important from the point of view of work execution time was while simulation and acceleration achieved by the
use of multiple computers for calculations. The calculations were made for four cases: a / fixed size tasks to be performed,
increasing the number of processes performing the same task, b / fixed size tasks to be performed, the number of threads
performing various calculations, c / growing magnitude of the task calculation, a growing number of processors that per-
form the task, d / growing magnitude of the task calculation, a growing number of threads performing calculations. For
the evaluation of execution times received different cases of measurement used to accelerate simulation calculations with
a constant magnitude of the task, the growth performance of the system with a constant increase in the size of the task and


Wkład obu autorów w powstanie artykułu wyniósł po 50%
157
TECHNIKA I TECHNOLOGIA
TECHNIKA I TECHNOLOGIA
the system performance by increasing the size of the task. In the present case the simulation space is divided into n com-
putational domain along the longest side of the tunnel. Calculations for a single computational domain were made by the
serial versionW bieĪącej
of FDS, whichpublikacji,
used a singlenacore
przykáadzie symulacji
processor. In the case ofpoĪaru w tunelu,
computing porównano
the number of domainsczasy
is greater than
unity, the calculation was performed by a parallel version of the FDS and used a different number of cores. For each of the
obliczeĔ otrzymane w przypadkach wykonania symulacji przez komputer z procesorem
computational domain, the calculations carried out separate process. Each treatment was assigned to a separate processor
core.wielordzeniowym,
For inter-process communication
z uĪyciemmechanism used Message
róĪnej iloĞci rdzeni Passing Interface
do obliczeĔ (MPI),
oraz which organized
wykonania the computer
symulacji
in a logical distributed memory machine. FDS variant limiting the use of multiple cores for the calculation of the same
przezwasjeden
processor written rdzeĔ. Artykuá
using OpenMP powstaá
directives, na podstawie
while parallel eksperymentów
version, which numerycznych,
can be used to calculate both the networked
computers and multiple cores per processor uses the MPI function calls. The results of the numerical experiments shown
przeprowadzonych w ramach pracy [2] z wykorzystaniem oprogramowania FDS
that both mechanisms speed up the calculation used for the simulation performed by the one processor core, although not
in a linear
(Firefashion.
DynamicsThe Simulator)
time of the simulation
[3]. by the OpenMP version were significantly higher than MPI. We investigated
also scalability of the system defined as a computer and software. Also in this case the results show that behaves better ver-
sion of MPI. OpenMP version turned out to be not scalable in the experiments. Comparing the speed of the processors of
the calculation from two leading manufacturers Intel and AMD noted that Intel simulations are performed much faster.

2.kluczowe:
Słowa ZaáoĪeniaFDS,eksperymentu
modelowania rozwoju numerycznego
pożaru w pomieszczeniach zamkniętych;
Keywords: FDS, modeling the spread of fire in enclosed spaces;
2.1. Przedmiot symulacji

Przypadek zrealizowanej symulacji poĪaru, do badania zachowania siĊ obliczeĔ


1. Wstęp
prowadzonych
Celem poprzedniejrównolegle
pracy autorówprzy uĪyciu
[1] było wielu procesorów,
zaprezen- 2. Założeniazostaáeksperymentu
zaczerpniĊty z numerycznego
pracy [4].
towanie algorytmów matematycznych
W zapoĪyczonym przykáadzie służących do mode-
obliczenia 2.1. Przedmiot
dotyczyáy symulacji symulacji
rozprzestrzeniania siĊ poĪaru
lowania rozwoju pożaru w pomieszczeniach zamkniętych. Przypadek zrealizowanej symulacji pożaru, do ba-
i badania model
Przedstawiony róĪnych rozwiązaĔ wentylacji
hydrodynamiczny i jej skutecznoĞci.
rozwiązuje nume- W przypadku
dania zachowania przeprowadzonych
się obliczeń prowadzonych równole-
rycznie jedną z postaci przeznaczonych dla przepływów gle przy użyciu
w ramach niniejszej pracy symulacji otrzymane przebiegi wielkoĞci fizycznych wielu procesorów, został typu
zaczerpnięty
niedużej prędkości równań Navier-Stokes‘a z uwzględnie- z pracy [4]. W zapożyczonym przykładzie obliczenia
niemtemperatura, czy stĊĪenie
zjawiska przepływu niebezpiecznych
ciepła oraz spalin z ognia. Wegazówdotyczyły
mają drugorzĊdne znaczenie i nie
symulacji rozprzestrzeniania siębyáy
pożaru i ba-
wspomnianym artykule zwrócono również uwagę na ogra- dania różnych rozwiązań
poddawane analizie i weryfikacji. Istotnym z punktu widzenia pracy byá natomiast czas wentylacji i jej skuteczności.
niczenia i uproszczenia w opisanych modelach. W przypadku przeprowadzonych w ramach niniejszej
wykonania
W bieżącej symulacji
publikacji, oraz przyspieszenie
na przykładzie uzyskanepracy
symulacji pożaru przezsymulacji
zastosowanie wieluprzebiegi
otrzymane komputerów do fizycz-
wielkości
w tunelu, porównano czasy obliczeń otrzymane w przy- nych typu temperatura, przypadek
czy stężenie przestrzeni
niebezpiecznych ga-
obliczeĔ. Stąd teĪ, do rozwaĪaĔ zostaá wybrany jeden przykáadowy
padkach wykonania symulacji przez komputer z proce- zów mają drugorzędne znaczenie i nie były poddawane
soremsymulacji.
wielordzeniowym, z użyciem różnej ilości rdzeni analizie i weryfikacji. Istotnym z punktu widzenia pracy
do obliczeń oraz wykonania symulacji przez jeden rdzeń.
RozwaĪany przypadek dotyczy jednej nitkibył natomiast
tunelu czas wykonaniao symulacji
samochodowego dáugoĞci oraz
4000przyspie-
Artykuł powstał na podstawie eksperymentów numerycz- szenie uzyskane przez zastosowanie wielu komputerów
m. Z powodu na znaczne wymiary badanego obiektu i nie znaczny wpáyw poĪaru na
nych, przeprowadzonych w ramach pracy [2] z wykorzy- do obliczeń. Stąd też, do rozważań został wybrany jeden
przestrzeĔ
staniem znaczenie
oprogramowania FDSoddaloną od Ĩródáa
(Fire Dynamics ognia, autorzy
Simulator) opracowania
przykładowy przypadek[4],przestrzeni
zdecydowali siĊ na
symulacji.
[3]. zmniejszenie symulowanej przestrzeni do 550 m. Schematyczny ukáad symulowanej
przestrzeni przedstawia rysunek 1.

fan
fan Smokedamper

Exhaustairduct

Airflow Firesite

Ryc. 1. Wymiary tunelu dla rozpatrywanego przypadku symulacji wg. [4]


Fig. 1. Tunnel dimension for fire simulation cases, according to [4].
158
TECHNIKA I TECHNOLOGIA

Rozważany przypadek dotyczy jednej nitki tunelu sa- grubość 0,5 m i są wykonane z betonu o właściwościach
mochodowego o długości 4000 m. Z powodu na znaczne podanych w tabeli 1.
wymiary badanego obiektu i nie znaczny wpływ pożaru 2.2. Założenia obliczeniowe
na przestrzeń znaczenie oddaloną od źródła ognia, autorzy Obliczenia dla przedstawionego zdarzenia pożaru
opracowania [4], zdecydowali się na zmniejszenie symu- w tunelu zostały wykonane dla 4 przypadków:
lowanej przestrzeni do 550 m. Schematyczny układ symu- a. stały rozmiar zadania do wykonania, rosnąca liczba
lowanej przestrzeni przedstawia rysunek 1. procesów wykonujących te same zadanie;
Źródłem ognia była cysterna z benzyną, dla której b. stały rozmiar zadania do wykonania, różne liczby
założono moc źródła ognia 100 kW. Źródło ognia zosta- wątków wykonujących obliczenia;
ło umieszczone 1800 m od wjazdu do tunelu, a 200 m od c. rosnący rozmiar zadania obliczeniowego, rosnąca
początku przestrzeni objętej symulacją. Wymiary przekroju liczba procesorów wykonujących zadanie;
poprzecznego przestrzeni przeznaczonej na ruch pojazdów d. rosnący rozmiar zadania obliczeniowego, rosnąca
wynosiły odpowiednio 9,75 m szerokości i 4.7 m wysoko- liczba wątków wykonujących obliczenia.
ści. Ponad jezdnią znajdował się szyb wentylacyjny nad Do oceny otrzymanych czasów wykonania różnych
całą szerokością i długością tunelu o wymiarach 9,75 x 1.8 przypadków symulacji zastosowano 3 miary: przyspie-
m. Wymiary przekroju tunelu przedstawiono na rysunku 2. szenie obliczeń przy stałej wielkości zadania, wydajność
systemu przy stałej wielkości zadania oraz wydajność sy-
stemu przy rosnącej wielkości zadania.

2.2.1. Określenie przyspieszenia obliczeń wykonywa-


nych w sposób równoległy
Przyspieszenie dla obliczeń wykonywanych równolegle
określono zgodnie ze wzorem:

S(p) = T(1)/T(p) (1)


Gdzie:
T(1) – czas obliczeń, przy podziale przestrzeni symula-
cji na jedną domenę obliczeniową, wykonywanych
przez wersję szeregową oprogramowania FDS,

T(p) – czas obliczeń, przy podziale na więcej niż jedną do-
Ryc. 2. Przekrój rozważanego tunelu, wg. [4]. menę obliczeniową, wykonywanych przez wersję
Fig. 2. Cross section of the tunnel under consideration,
równoległą oprogramowania FDS,
according to [4].
p – liczba procesorów wykonujących obliczenia rów-
Na zakończeniach kanału wentylacyjnego znajdowały nolegle.
się dwa wentylatory wyciągające powietrze. Założono, że Idealnym przyspieszeniem jest S(p) = p – (przyspie-
ich wydajność wynosiła po 160 m3/s na dwóch końcach ka- szenie liniowe).
nału wentylacyjnego. Dodatkowo, przez wejście do tunelu
dostawał się do przestrzeni symulacji strumień świeżego 2.2.2. Określenie wydajności systemu przy stałym
powietrza o szybkości przepływu148 m3/s . Na końcach rozmiarze zadania
tunelu ciśnienie zostało ustalone na poziomie domyślnego Wydajność systemu jest ilorazem osiągniętego przyspiesze-
ciśnienia atmosferycznego ( 101 325 Pa ). Otwór łączący nia do idealnego przyspieszenia liniowego. Określa ją wzór:
kanał wentylacyjny z przestrzenią ruchu został usytuowa- (p) = S(p)/p = T(1)/pT(p) (2)
ny 35 m od źródła ognia. Wymiary wspomnianego otwo- Gdzie:
ru wynosiły 8 m x 3 m. Założono, że ściany tunelu mają S(p) – przyspieszenie określone wzorem (1),

Tabela 1.
Właściwości materiału użytego do konstrukcji ścian tunelu, źródło: [4].
Table 1.
Properties of the material used to construct the tunnel wall, source: [4].

gęstość (density) 2280 kg/m3


1,04
ciepło właściwe (specific heat)
kJ/kg∙K
przewodnictwo cieplne (thermal conductivity) 1,8 W/m∙K
emisyjność (emissivity) 0,9
współczynnik absorpcji (absorption coefficient) 5 ∙104 1/m

159
TECHNIKA I TECHNOLOGIA

p – liczba procesorów wykonujących obliczenia rów- taką samą liczbę komórek o rozmiarach ok. 0,69 m x 0,67
nolegle. m x 0,67 m każda. Liczby komórek przypadających na
2.2.3. Określenie wydajność systemu przy rosnącym jedną domenę obliczeniową przedstawia tabela 3.
rozmiarze zadania
Wydajność systemu, będąca funkcją dwóch zmiennych:
liczby procesorów oraz wielkości zadania, została okre-
ślona wzorem:

E(n,p) = T(n,1)/pT(n,p) (3)


Gdzie:
n – względny rozmiar zadania w stosunku do naj-
mniejszego zadania użytego w porównaniu; dla
najmniejszego zadania n = 1,
p – liczba procesorów wykonujących obliczenia, 
T(n,1) – czas wykonania zadania o rozmiarze n przez wer- Ryc. 3. Podział przestrzeni symulacji na domeny
sję szeregową FDS, obliczeniowe.
T(n,p) – czas wykonania zadania o rozmiarze n przez p Fig. 3. Division of the computational domain simulation.
procesorów prze wersję równoległą FDS.
Tabela 3.
2.3 Parametry stacji obliczeniowej Liczba komórek przypadających na domeny
Eksperyment numeryczny został przeprowadzony na obliczeniowe
komputerze, którego podstawowe parametry przedstawia Table 3
tabela 2. Obliczenia powtarzano 3 krotnie dla każdego Number of cells per computational domain
z przypadków. Liczba Liczba komórek Liczba wszystkich
Tabela 2. domen w domenie komórek
Parametry komputera użytego do przeprowadzenia (Number (The number of cells (The total
eksperymentu numerycznego of domains) in the domain) number of cells)
Table 2 1 152 256 152 256
The parameters used to carry out computer
numerical experiment 2 76 128 152 256

3 50 688 152 064


Parametr (parameter) Wartość (value)
Typ procesora Intel(R) Core(TM) 2 4 38 064 152 256
(Processor type) Quad Q6600
Liczba rdzeni Obliczenia dla jednej domeny obliczeniowej zostały
4
(Number of Cores) wykonane przez wersję szeregową FDS, która korzystała
Częstotliwość taktowania z jednego rdzenia procesora. W przypadkach z liczbą do-
jednego rdzenia 2,4 GHz men obliczeniowych większą od jedności, obliczenia zo-
(A core clock speed) stały wykonane przez wersję równoległą FDS i używały
Wielkość pamięci RAM różnej liczby rdzeni. Dla każdej z domen obliczeniowych,
4,0 GB obliczenia przeprowadzał osobny proces. Każdy z pro-
(Size of the RAM)
cesów był przydzielony do osobnego rdzenia procesora.
System operacyjny
Windows 7, 64-bit Przydzielaniem procesów do procesorów zajmował się
(Operating System)
system operacyjny [5]. Do komunikacji między procesa-
mi wykorzystano mechanizm Message Passing Interface
Szczegółowe wyniki przeprowadzonych obliczeń
(MPI) [6], który organizuje komputer w logiczną maszynę
znajdują się w pracy [2].
z pamięcią rozproszoną, pomimo, że faktycznie, kompu-
ter użyty do przeprowadzenia eksperymentu był maszyną
3. Wyniki eksperymentu numerycznego ze wspólną pamięcią [7].
3.1. Stała wielkość zadania, rosnąca liczba proce- Średnie arytmetyczne otrzymanych czasów wykona-
sorów nia symulacji zawiera tabela 4.
W analizowanym przypadku przestrzeń symulacji zo- Wyznaczone na podstawie wzoru (1) przyspieszenie
stała podzielona na n ( od 1 do 4 ) domen obliczeniowych uzyskane w wyniku dodawania kolejnych procesorów pre-
wzdłuż osi najdłuższego boku tunelu. Podział przestrzeni zentuje tabela 4. Otrzymane wyniki dla 2 i 3 procesorów
symulacji przedstawia rysunek 3. są zbliżone – wzrost przyspieszenia na każdy dodatkowy
Każda z domen obliczeniowych została podzielona na procesor na poziomie ok. 35 – 40% w stosunku do zadania
160
TECHNIKA I TECHNOLOGIA


Ryc. 4. Wykres wartości przyspieszenia obliczeń przy stałym rozmiarze zadania obliczeniowego
w funkcji liczby procesorów wykonujących obliczenia.
Fig. 4. The graph of acceleration calculations in fixed-size computing task as a function of the number
of processors that perform the calculation.

wykonywanego przez jeden procesor. Jest to także wynik nego, czego efektem jest mniejszy wzrost przyspieszenia
podobny do wyników opisywanych w Internecie, na fo- przy wykonaniu obliczeń przez 4 rdzenie w stosunku do
rum użytkowników FDS. obliczeń wykonanych przez 3 rdzenie.
Nieco niższym rezultatem charakteryzuje się przypa- Porównanie przyspieszenia z przypadkiem idealnym
dek wykonany przez 4 procesory – wzrost przyspieszenia – przyspieszeniem liniowym, prezentuje rysunek 4.
o około 18 % w stosunku do zadania wykonywanego przez
jeden procesor. Przyczyną takiego stanu jest to, że w przy- 3.1.1. Komunikacja między procesami
padku liczby domen, na które podzielono przestrzeń sy- W przypadku podziału zadania pomiędzy kilka proce-
mulacji, mniejszej od liczby rdzeni procesora, obliczenia sorów, poszczególne domeny obliczeniowe muszą się na-
dla domen były wykonywane przez osobne procesy, które wzajem komunikować w celu wymiany wartości wyzna-
z kolei przeważnie wykonywały się na różnych rdzeniach czanych wielkości fizycznych przylegających granicach.
procesora, przez co nie konkurowały ze sobą o przyznanie Wymianie podlegają wielkości z granicznych komórek
procesora przez system operacyjny. Wtedy, przynajmniej obliczeniowych sąsiadujących domen. Czas poświęcony
jeden z rdzeni pozostawał w znacznej mierze nie używa- na komunikację może być odczytany z plików wyjścio-
ny do obliczeń, zwykle był wykorzystywany do obsługi wych otrzymanych w wyniku obliczeń. Przy stałym roz-
innych zadań systemu operacyjnego. W przypadku do- miarze zadania obliczeniowego wraz ze wzrostem liczby
dania 4 domeny, procesy były wykonywane zwykle na domen obliczeniowych, na które dzieli się przestrzeń sy-
osobnych rdzeniach, ale pojawił się problem rywalizacji mulacji, rośnie liczba komórek, dla których do obliczeń
o czas procesora z innymi zadaniami systemu operacyj- są potrzebne wartości z sąsiedniej domeny obliczeniowej.


Ryc. 5. Podział płaszczyzny na domeny obliczeniowe z zaznaczeniem komórek granicznych
w przyległych domenach obliczeniowych.
Fig. 5. The division plane of the computational domain selection border cells in adjacent computing domains

161
TECHNIKA I TECHNOLOGIA

Takie komórki występują na granicach przyległych domen niż w przypadku domeny 1.


obliczeniowych. Przykład takiej sytuacji na płaszczyźnie Inna sytuacja ma miejsce w przypadku obliczeń
prezentuje rysunek 5, gdzie zaprezentowano podział pro- prowadzonych przez 3 procesory. Tutaj także wszystkie
stokątnej płaszczyzny na n części. Każda z n części jest domeny obliczeniowej obejmują dokładnie takie same
podzielona na komórki obliczeniowe. Czerwonymi linia- rozmiary, z tym, że dwie domeny: domena 1 oraz domena
mi zostały zaznaczone granice przylegających domen. 3 obejmują obszary na obu końcach symulowanego tune-
Szarym kolorem wypełniono komórki, dla których wyma- lu, domena 2 znajduje się pomiędzy nimi, obejmuje ob-
gana jest wymiana informacji z komórkami z sąsiedniej szar, gdzie znajduje się źródło ognia. Domeny 1 oraz 3 nie
domeny. komunikują się ze sobą bezpośrednio, a robią to jedynie
W przypadku przeprowadzonych eksperymentów nu- z domeną 2. Natomiast domena 2, musi komunikować się
merycznych, przestrzeń symulacji została podzielona na z dwoma sąsiadującymi domenami, czyli dwa razy więcej
jednakowe domeny obliczeniowe wzdłuż najdłuższego komórek wymaga wymiany informacji niż w domenach 1
boku tunelu tak, jak jest to przedstawione na rysunku 3. i 3. Wyjaśnia to, dlaczego pomimo większego zadania ob-
Zastosowano taki podział ze względu na redukcję ilości liczeniowego z tytułu obecności źródła ognia w domenie
komórek, które wymagają komunikacji z sąsiednią dome- 2, procentowo poświęcony czas na komunikację stanowi
ną – powierzchnia styku sąsiednich domen jest przy takim większą część całego czasu obliczeń niż w przypadku do-
podziale najmniejsza. men 1 i 3.
Otrzymany procentowy udział czasu poświęcone- Przypadek z czterema procesorami jest przykładem
go na komunikację między domenami obliczeniowymi innej sytuacji, gdzie pomimo dokładnie takiej samej licz-
w stosunku do całego czasu obliczeń w pojedynczej do- by sąsiadujących komórek w poszczególnych domenach,
menie został zestawiony w tabeli 5. jak w przypadku 3 procesorów, procentowe udziały ko-

Tabela 5.
Procentowy udział czasu poświęconego na komunikację w poszczególnych domenach obliczeniowych w stosunku
do całego czasu obliczeń, przy użyciu różnej liczby procesów, dla stałego rozmiaru zadania
Table 5.
Percentage of time spent on communication in various computing domains with respect to the computation time,
with a different number of processes for a fixed size task

Procent całkowitego czasu obliczeń poświęcony na komunikacje


Liczba procesorów (Percentage of total time spent on communication calculations)
(Number
of processors) Domena 1 Domena 2 Domena 3 Domena 4
(Domain 1) (Domain 2) (Domain 3) (Domain 4)
1 0.00 % ------------- ------------- -------------
2 0.86 % 0.66 % ------------- -------------
3 0.86 % 1.29 % 0.90 % -------------
4 1.26 % 1.83 % 2.10 % 1.33 %

Procenty czasów poświęconych na komunikację munikacji między domenami są większe niż wariantu
w domenach obliczeniowych różnią się między sobą na- z podziałem na 3 domeny. Dzieję się tak, ponieważ dome-
wet w obrębie tego samego przypadku ( w domenach ob- ny obejmują mniejsze fragmenty przestrzeni symulacji, co
liczeniowych dla tego samego zadania ). Np. dla przypad- oznacza mniejsze zadania obliczeniowe, natomiast ilość
ku wykonywanego przez 2 procesory czasy poświęcone komórek, dla których należy wymienić informacje pomię-
na komunikację są różne, pomimo tego, że dwie domeny dzy domenami jest taka sama.
obejmują fragmenty przestrzeni symulacji o dokładnie
takich samych wymiarach, dokładnie taka sama jest też 3.2. Rosnący rozmiar zadania, rosnąca liczbapro-
ilość komórek, które wymagają wymiany informacji. Po- cesorów
wodem takiego stanu jest niesymetryczny charakter po- Obliczenia przeprowadzono przy użyciu wersji FDS
działu przestrzeni symulacji – w jednej z domen znajduje wykorzystującej wywołania MPI. Scenariusze symulacji
się źródło ognia oraz otwór wentylacyjny, co powoduję zostały zdefiniowane w ten sposób, że cała przestrzeń sy-
obecność dodatkowych obliczeń w tej domenie ponad ob- mulacji była dzielona na n ( do 1 do 4 ) domen obliczenio-
liczenia wykonywane, w drugiej z domen, gdzie oblicze- wych, tak jak zostało to opisane w punkcie 3.1. i przed-
nia dotyczą jedynie przepływu gazów, rozprzestrzeniania stawione na rysunku 3. Obliczeniami dla jednej domeny
się ciepła i nagrzewania się ścian tunel. Oznacza to, że taki zajmował się jeden rdzeń procesora. Zamiana rozmiaru
sam czas poświęcony na komunikację będzie stanowił zadania została osiągnięta przez zmianę rozmiaru komó-
mniejszy procent całych obliczeń w przypadku domeny 2 rek, na które była podzielona domena obliczeniowa. Przy-
162
TECHNIKA I TECHNOLOGIA

jęto, że zadanie o rozmiarze dwukrotnie większym będzie Przeprowadzenie eksperymentu z rosnącą wielkoś-
wtedy, gdy liczba komórek w domenie będzie dwukrotnie cią zadania pozwoliło zbadać skalowalność systemu. Sy-
większa. stem należy rozumieć jako parę: komputer oraz program
Eksperymenty numeryczne przeprowadzono na kom- do symulacji. Otrzymane czasy wykonania poszczegól-
puterze, którego parametry przedstawiono w tabeli 2. Do nych przypadków wskazują na znaczne skrócenie czasu
obliczeń wykorzystano od 2 do 4 procesów, które były wykonania zadań na kilku procesorach w stosunku do
przydzielane przez system operacyjny osobnym rdzeniom czasu wykonania tych samych zadań przez wersje sze-
procesora. Przeprowadzono po 3 próby dla wszystkich regową FDS. Otrzymane rezultaty wskazują na spadek
rozmiarów zadania obliczeniowego. Punktem odniesie- wydajności systemu na poziomie do ok. 10% na każdy
nia do oceny otrzymanych czasów wykonania symulacji dodatkowy proces i jednoczesny wzrost zadania obli-
z użyciem wielu procesorów były czasy wykonania zadań czeniowego dla liczby procesów 2 oraz 3. Dla liczby
o takim samym rozmiarze jak zadania wykonywane przez procesów równej 4 spadek wydajności jest większy – na
wiele procesorów wykonane przez jeden procesor, przez poziomie 20%. Przyczyną większego spadku wydajno-
wersję szeregową FDS. Średnie arytmetyczne otrzyma- ści dla obliczeń wykonywanych na wszystkich rdzeniach
nych czasów wykonania symulacji dla poszczególnych procesora jest obecność innych zadań w systemie ope-
przypadków wykonywanych w zależności od liczby pro- racyjnym, które muszą być wykonywane. W przypadku
cesorów wykonujących zadanie oraz średnie czasy wy- liczby procesów wykonujących obliczenia mniejszej niż
konania tych samych zadań przez wersję szeregową FDS liczba dostępnych rdzeni w systemie, te inne zadania
przedstawia tabela 6. wykonywane przez system operacyjny były głównie wy-

Tabela 6.
Czasy wykonania symulacji przy użyciu różnej liczby procesorów, dla rosnącego rozmiaru zadania
Table 6.
The time of the simulation using different numbers of processors, the growing size of the task

Wydajność
Liczba Liczba Czas wykonania Czas wykonania (sze-
Rozmiary komórek (wg. wzoru 3)
procesorów komórek (MPI) [sek] regowa) [sek]
[m] (Performance
(Number of (Number of (Execution time (Execution time (se-
(Cell size [m]) (according to
processors) cells) (MPI) [sec]) rial) [sec])
formula 3))
1 40 000 1,1 x 1,08 x 1 3103.2 3103.2 1.0
2 81 900 0,87 x 0,83 x 0,8 3026.2 5328.0 0.88
3 121 110 0,79 x 0,77 x 0,8 3816.0 9540.0 0.833
4 152 256 0,7 x 0,67 x 0,67 4248.0 10790.0 0.635

Ryc. 6. Wykres wydajności systemu przy rosnącym rozmiarze zadania obliczeniowego od liczby procesorów wykonują-
cych obliczenia.
Fig. 6 Chart performance of the system with the increasing size of the task calculation of the number of processors that
perform calculations.
163
TECHNIKA I TECHNOLOGIA

konywane na niewykorzystywanym do obliczeń rdzeniu udział komunikacji rósł wraz ze wzrostem liczby komó-
procesora, przez co w niewielkim stopniu konkurowały rek. Taką sytuację na płaszczyźnie prezentuje rysunek 7.
o przyznanie procesora z procesami wykonującymi ob- W przykładzie 1 z rysunku 7 płaszczyzna została po-
liczenia. Otrzymane wydajności wyznaczone zgodnie dzielona na dwie domeny, każda po 48 komórek. W tym
z wzorem (3) prezentuje tabela 6. Porównanie uzyskanej przypadku w domenie 1, wymiany informacji z domeną
wydajności prezentuje wykres 6. 2 wymaga 6 komórek ( komórki zaznaczone na szaro ).

Tabela 7.
Procentowy udział czasu poświęconego na komunikację w poszczególnych domenach obliczeniowych w stosunku
do całego czasu obliczeń, przy użyciu różnej liczby procesów, dla rosnącego rozmiaru zadania
Table 7.
Percentage of time spent in each domain communication for computing the time of computation, using a number
of different processes for increasing the size of the task

Procent całkowitego czasu obliczeń poświęcony na komunikacje


Liczba procesorów (Percentage of total time spent on communication calculations)
(Number of processors) Domena 1 Domena 2 Domena 3 Domena 4
(Domain 1) (Domain 2) (Domain 3) (Domain 4)
1 0.00 % ------------- ------------- -------------
2 1.32 % 1.67 % ------------- -------------
3 1.39 % 2.07 % 1.50 % -------------
4 2.04 % 3.00 % 3.38 % 2.26 %


Ryc. 7. Podział płaszczyzn na domeny obliczeniowe z zaznaczeniem komórek.
Fig. 7. Division planes on computational domain, indicating the cells.

3.2.1. Komunikacja między procesami Natomiast przykład 2 prezentuje podział tej samej płasz-
Procentowy udział czasu poświęconego na komuni- czyzny na 4 domeny obliczeniowe. W każdej domenie
kację pomiędzy domenami w stosunku do całego czasu znajduję się w przybliżeniu tyle samo komórek jak w po-
obliczeń w poszczególnych domenach przedstawia tabela dziale z przykładu 1 ( 54 komórki ), zmianie uległa ilość
7. Do zjawisk opisanych w punkcie 3.1.1., które także do- komórek, które wymagają komunikacji – np. w domenie
tyczą eksperymentu z rosnącym rozmiarem zadania obli- 1 jest ich 9. Taka sam sytuacja miała miejsce w badanym
czeniowego, dochodzi jeszcze jedno. W tym przypadku scenariuszu symulacji, tyle że podział dotyczył przestrze-
liczba komórek w domenie obliczeniowej była podobna ni, nie jak w przedstawionym przykładzie, płaszczyzny.
niezależnie od liczby procesorów wykonujących zadania.
Zostało to osiągnięta przez zwiększanie liczby komórek 3.3. Stała wielkość zadania, rosnąca liczba wątków
w domenie obliczeniowej wraz ze wzrostem liczy proceso- Obliczenia przeprowadzono przy użyciu wersji FDS
rów wykonujących zadanie. Zatem można uznać, że samo wykorzystującej dyrektywy OpenMP [8]. W tym przypad-
zadanie obliczeniowe było stałe, zmieniała się natomiast ku, cała przestrzeń symulacji została określona w jednej do-
liczba komórek dla których należało wymienić informa- menie obliczeniowej. Domena była podzielona na 152 256
cję z sąsiednimi domenami, właśnie dlatego procentowy komórek o rozmiarach ok. 0,64m x 0,67 m x 0,67 m każda.
164
TECHNIKA I TECHNOLOGIA

Tabela 8.
Czasy wykonania symulacji przy użyciu różnej liczby wątków, dla stałego rozmiaru zadania
Table 8
The time of the simulation using different numbers of threads, for a fixed size task
Czas wykonania symulacji Wydajność
Liczba wątków [sek] Przyspieszenie obliczeń obliczeń
(Number of threads) (Simulation execution time (Acceleration calculations) (Performance
[sec]) calculations)
1 9870.0 1.0 1.0
2 8835.0 1.117 0.557
3 7963.0 1.23 0.412
4 7876.0 1.253 0.312

Obliczenia dla domeny były wykonywane przez pulę wąt- lacji maksymalne osiągnięte przyspieszenie wyznaczone
ków o różnej wielkości, którą zarządzał system operacyjny zgodnie ze wzorem (1) nie przekroczyło poziomu 1,3 dla
[9]. Rozmiar puli wątków był określany ręcznie przed uru- 4 wątków wykonujących zadanie. Dla liczby wątków nie
chomieniem obliczeń przez ustawienie zmiennej środowi- przekraczającej 3 dodawanie kolejnego wątku do puli
skowej systemu operacyjnego OMP_NUM_THREADS na wykonującej obliczenia skutkowało wzrostem przyspie-
pożądaną liczbę wątków. W przypadku obliczeń prowadzo- szenia obliczeń o około 10% w stosunku do obliczeń
nych przez wiele wątków, każdy z wątków otrzymuje po- prowadzonych przez wersję szeregową FDS. Ta tenden-
jedyncze zadanie, dla którego obliczenia mogą być prowa- cja nie występuje w przypadku dodania 4 wątku do puli
dzone niezależnie. Takim zadaniem może być wyznaczenie wykonującej obliczenia. Przyczyną takiego stanu jest to,
wielkości dla jednej komórki domeny obliczeniowej dla że w przypadku liczby wątków mniejszej od liczby rdzeni
pojedynczego kroku czasowej. procesora, wątki były wykonywane na różnych rdzeniach,
Eksperymenty numeryczne zostały przeprowadzone przez co nie konkurowały ze sobą o przyznanie proceso-
na komputerze, którego parametry zostały opisane w ta- ra przez system operacyjny. Jeden z rdzeni pozostawał
beli 2. Do obliczeń wykorzystano od 2 do 4 wątków. Prze- w znacznej mierze nie używany do obliczeń, zwykle był
prowadzono po 3 próby dla każdej liczby wątków. Punk- wykorzystywany do obsługi innych zadań systemu opera-
tem odniesienia wyników były czasy wykonania uzyskane cyjnego. W przypadku dodania 4 wątku do puli wykonu-
przez wykonanie obliczeń szeregową wersją FDS. Śred- jącej obliczenia, wątki były wykonywane zwykle na osob-
nie arytmetyczne otrzymanych czasów wykonania zostały nych rdzeniach, ale pojawił się problem rywalizacji o czas
umieszczone w tabeli 8. procesora z innymi zadaniami systemu operacyjnego,
Otrzymane czasy wykonania symulacji wskazują na czego efektem jest minimalny wzrost przyspieszenia przy
niewielkie przyspieszenie obliczeń uzyskane przez wyko- wykonaniu obliczeń przez 4 wątki w stosunku do obliczeń
nywanie ich z użyciem wielu wątków. Dla badanej symu- wykonanych przez 3 wątki. Porównanie przyspieszenia
TECHNIKA I TECHNOLOGIA
(acceleration)

(numberofthreads)

Ryc. 8. Przyspieszenie
Ryc. 8. Przyspieszenie obliczeĔ
obliczeń w zaleĪnoĞci
w zależności ododliczby
liczby wątków
wątków wykonujących
wykonującychobliczenia
obliczenia
(przy staáym rozmiarze zadania obliczeniowego).
(przy stałym rozmiarze zadania obliczeniowego).
Fig. 8. Acceleration calculation depending on the number of threads performing calculations
Fig. 8. Acceleration calculation depending on the number of threads performing calculations
(with a fixed-size calculation task).
(with a fixed-size calculation task).
165
rformance)
Ryc. 8. Przyspieszenie obliczeĔ w zaleĪnoĞci od liczby wątków wykonujących obliczenia
(przy staáym rozmiarze zadania obliczeniowego).
TECHNIKA
Fig. 8. Acceleration calculation dependingI TECHNOLOGIA
on the number of threads performing calculations
(with a fixed-size calculation task).

(performance)

(numberofthreads)

Ryc. 9. WydajnoĞci
Ryc. 9. Wydajności systemu w
systemu obliczeń obliczeĔ w zaleĪnoĞci
zależności od liczby
od liczby wątkówwątków wykonującychobliczenia
wykonujących
obliczenia
(przy (przy
stałym staáym rozmiarze
rozmiarze zadaniazadania obliczeniowego).
obliczeniowego).
Fig. 9.system
Fig. 9. Computing Computing system performance
performance depending depending on the number
on the number of threads
of threads performingcalculations
performing
calculations (at constant size calculation task).
(at constant size calculation task).

obliczeń, wyznaczonego zgodnie z wzorem (1), z przy- jest podzielona domena obliczeniowa. Przyjęto, że zada-
padkiem idealnego przyspieszenia liniowego prezentuje nie o rozmiarze dwukrotnie większym będzie wtedy, gdy
rysunek 8. Konsekwencją niewielkiego wzrostu przyspie- liczba komórek w domenie będzie dwukrotnie większa.
szenia obliczeń jest spadająca wydajność systemu, która Niestety nie jest to przybliżenie idealne, gdyż różny roz-
została wyznaczona zgodnie ze wzorem (2). Porównanie miar komórek, może mieć bezpośredni wpływ na otrzy-
wydajności z przypadkiem idealnym, gdy wydajność po- mane prędkości przepływu, które z kolei są podstawą do
zostaje stała prezentuje rysunek 9. określenia, czy krok czasowy dla wykonywania obliczeń
nie jest zbyt duży. Jeżeli zmiana rozmiaru komórek bę-
3.4. Rosnąca wielkość zadania, rosnąca liczba dzie miała wpływ na prędkość przepływu do tego stopnia,
wątków że nie będą spełnione warunki (11), będzie to oznaczać
Podobnie jak w poprzednim przypadku opisanym więcej obliczeń niż wynikałoby to tylko z samego zwięk-
w punkcie 3.3., obliczenia wykonano przy użyciu wersji szenia liczby komórek. W przypadkach stworzonych do
FDS wykorzystującej dyrektywy OpenMP. Cała przestrzeń testów do takiej sytuacji nie dochodziło, ponieważ użyto
symulacji zawierała się w obrębie jednej domeny oblicze- stałej wartości kroku czasowego, jednak dla bardziej zło-
niowej. Sterowanie liczbą wątków odbywało się przez żonych scenariuszy symulacji wystąpienie tego zjawiska
ustawianie zmiennej środowiskowej OMP_NUM_THRE- jest bardzo prawdopodobne.
ADS systemu operacyjnego na pożądaną liczbę wątków. Parametry komputera, na którym wykonano ekspe-
W tym przypadku oprócz liczby wątków wykonujących rymenty przedstawia tabela 2. Do obliczeń wykorzystano
obliczenia, zmianie ulegał również rozmiar zadania do od 2 do 4 wątków. Przeprowadzono po 3 próby dla każ-
wykonania. Zmiana rozmiaru zdania została osiągnięta dej liczby wątków. Za punkt odniesienia do otrzymanych
przez zmianę rozmiaru elementarnych komórek, na które wyników posłużyły czasy wykonania obliczeń dla zadań

Tabela 9.
Czasy wykonania symulacji przy użyciu różnej liczby wątków, dla rosnącego rozmiaru zadania
Table 9.
The time of the simulation using different numbers of threads, the growing size of the task

Liczba Liczba Czas wykonania Czas wykonania Wydajność


Rozmiary komórek
wątków komórek (OpenMP) [sek] (szeregowa) [sek] (wg. wzoru 3)
[m]
(Number of (Number of (Execution time (Execution time (Performance
(Cell size [m])
threads) cells) (OpenMP) [sec]) (serial) [sec]) (according to formula 3))
1 40 000 1,1 x 1,08 x 1 3103.0 3103.0 1.0
2 81 900 0,87 x 0,83 x 0,8 4248.0 5328.0 0.627
3 121 110 0,79 x 0,77 x 0,8 6870.0 9540.0 0.463
4 152 256 0,7 x 0,67 x 0,67 7980.0 10790.0 0.338

166
TECHNIKA I TECHNOLOGIA

Ryc. 10. Wydajność systemu obliczeń przy rosnącym rozmiarze zadania obliczeniowego
w funkcji liczby wątków wykonujących obliczenia
Fig. 10. System performance calculations with the increasing size of computational tasks as a function
of the number of threads performing calculations

o zwiększonych rozmiarach przez szeregową wersję FDS. komputerach osobistych, przez co model matematyczny
Średnie arytmetyczne czasów wykonania symulacji przez przeniesiony na grunt programu posiada wiele uproszczeń.
wersję OpenMP oraz odpowiadające im średnie czasów W wyniku rozwoju oprogramowania powstały wersje,
wykonania przez wersję szeregową, rozmiary zadań pre- które wykorzystują nowoczesne architektury procesorów
zentuje tabela 9. wielordzeniowych oraz pozwalają prowadzić obliczenia
Eksperyment numeryczny z rosnącą liczbą komórek równolegle na wielu komputerach połączonych przy po-
do obliczeń miał celu zbadanie skalowalności systemu. mocy sieci. Odmiana ograniczająca się do wykorzystania
System należy rozumieć jako współzależny kompleks: do obliczeń wielu rdzeni tego samego procesora została
komputer + program do symulacji. Otrzymane w wyni- napisana przy użyciu dyrektyw OpenMP, natomiast wer-
ku eksperymentów czasy wykonania symulacji z użyciem sja równoległa, która do obliczeń może używać zarówno
różnej liczby wątków wskazują na niewielki zysk jeżeli komputerów połączonych w sieć, jak i wielu rdzeni jed-
chodzi o skrócenie czasu wykonania symulacji w stosunku nego procesora korzysta z wywołań funkcji MPI. Z całą
do zadania wykonywanego przez pojedynczy wątek. Za- pewnością obie odmiany przyspieszają obliczenia symu-
chowanie się symulacji jest zbliżone dla badanego przy- lacji w stosunku do wykonania przez jeden rdzeń proce-
padku przy stałym rozmiarze zadania opisanego w punk- sora. Przeprowadzone w ramach pracy [4] eksperymenty
cie 3.3. Skrócenie czasu wykonania zadań, w stosunku do numeryczne polegające na pomiarze czasu wykonania
symulacji wykonywanych przez jeden wątek, rośnie o ok. tych samych zadań przez różne wersje FDS, wykazały,
10 % przez dodanie kolejnego wątku do puli wykonującej że odmianą, która charakteryzowała się większym przy-
obliczenia. Nie dotyczy to liczby wątków równej 4, gdzie spieszeniem obliczeń w stosunku do wersji wykonywanej
wzrost jest mniejszy – na poziomie ok. 5 %. Powody ta- przez jeden rdzeń procesora, była wersja oparta o wywo-
kiej sytuacji zostały opisane w punkcie 3.3. Nie znaczne łania MPI. Idealnym wynikiem byłaby sytuacja, w której
skrócenie czasu wykonania oznacza spadającą wydajność zadanie wykonywane przez n procesorów wykonywało
systemu. Rysunek 10 pokazuje tendencję spadku wydaj- się n razy krócej. Taka sytuacja w praktyce jest nie osią-
ności systemu. Oznacza to, że pomimo równoczesnego galna poza pewnymi specyficznymi przypadkami. Wyni-
dwukrotnego wzrostu rozmiaru zadania i dwukrotnego ka to z faktu, iż w programie nie wszystkie czynności dają
wzrostu liczby wątków wykonujących zadanie, nie udaję się zrównoleglić.
się utrzymać stałej wydajności systemu. Otrzymane w wyniku eksperymentów czasy wy-
konania symulacji przez wersję OpenMP były znaczą-
4. Podsumowanie co wyższe niż MPI. Przykładowo, użycie dwóch rdzeni
Modelowanie pożaru jest zagadnieniem trudnym do procesora w przypadku MPI pozwoliło na skrócenie cza-
opisania matematycznie. Jeszcze trudniejsze jest przenie- su obliczeń o blisko 30 % w stosunku do obliczeń wy-
sienie modelu matematycznego do odpowiednio szybkie- konywanych przez jeden rdzeń, natomiast w przypadku
go i dokładnego oprogramowania, które będzie rozwiązy- OpenMP w analogicznej sytuacji, udało się skrócić obli-
wać ten model. Najczęściej wymienianym w publikacjach czenia o nieco ponad 10 %. Wyniki te potwierdzają opinie,
naukowych środowiskiem do symulacji pożarów jest Fire jakie można odnaleźć na oficjalnym forum internetowym
Dynamics Symulator. FDS stworzono z myślą o użyciu na projektu FDS odnośnie wersji MPI, ale również potwier-

167
dzają, deklaracje twórców na temat wersji OpenMP o nie- 3. Fire Dynamics Simulator and Smokeview (FDS-
doskonałości tej odmiany FDS, jeżeli chodzi o uzyskane SMV), [online], Official Website, Hosted at the Na-
przyspieszenie obliczeń. tional Institute of Standards and Technology (NIST),
Inna grupa eksperymentów numerycznych pozwoli- [on line] [dostęp 27.09.2012], Dostępny w interne-
ła zbadać skalowalność systemu rozumianego jako kom- cie: http://fire.nist.gov/fds/index.html ;
puter wraz z oprogramowaniem. Również i w tym przy- 4. Chi-Ji Lin, Yew Khoy Chuah., A study on long tunnel
padku otrzymane wyniki wykazały, że lepiej zachowuje smoke extraction strategies by numerical simulation,
się wersja MPI - przy jednoczesnym proporcjonalnym Tunnelling and Underground Space Technology,
zwiększaniu rozmiarów zadania obliczeniowego i liczby 2008, vol. 23. s. 522-530;
procesorów wykonujących to zadanie, wydajność takiego 5. Silberschatz A., Galvin P. B., Podstawy systemów
systemu nieznacznie spadała. Jest to wynik zdecydowanie operacyjnych. Wydawnictwa Naukowo-Techniczne
korzystny. Natomiast wersja OpenMP okazała się nie ska- Warszawa:, 2005;
lowalną w przeprowadzonych eksperymentach. 6. Oficjalna witryna internetowa projektu MPICH2 [on
Należy pamiętać, że wyniki mogą się różnić, w zależ- line] [dostęp 27.09.2012], Dostępny w Internecie:
ności od konkretnego scenariusza symulacji oraz zastoso- http://www.mcs.anl.gov/research/projects/mpich2/ ;
wanego podziału zadania pomiędzy procesory. 7. Grama A., Gupta A., Karypis G., Kumar V., Intro-
W trakcie definiowania scenariusza symulacji oraz duction to Parallel Computing [online]. Wyd. 2. Es-
jego testów wyszło na jaw kilka problemów, z którymi sex: Addison – Wesley, 2003 [dostęp 27.09. 2012],
można się spotkać w trakcie definiowania przypadku. Dostępny w Internecie: http://books.google.com/
Pierwszym, było przenoszenie zdefiniowanego i testowa- books?id=B3jR2EhdZaMC;
nego scenariusza symulacji na systemie operacyjnym 32 8. Oficjalna witryna internetowa projektu OpenMP, [on
– bitowym na system 64 – bitowy. Zdarzały się sytuacje, line] [dostęp 27.09 2012], Dostępny w Internecie:
w których symulacje wykonywały się w pełni na jednym http://openmp.org/ ;
z systemów, natomiast na drugim ta sama symulacja, 9. Ben-Ari M., Podstawy programowania współbież-
była przerywana ze względu na niestabilność obliczeń. nego i rozproszonego, Warszawa Wydawnictwa Na-
Oznacza to, że należy poważnie podchodzić do wskazó- ukowo-Techniczne, 1996;
wek określonych w [10] na temat unikania niestabilności 10.Oficjalna witryna internetowa projektu MPICH2, [on
obliczeń, zwłaszcza wtedy, gdy definiowany scenariusz line] [dostęp 27.09. 2012], Dostępny w Internecie:
symulacji ma być wykonywany na różnych platformach http://www.mcs.anl.gov/research/projects/mpich2/ ;
systemowych.
Drugim, istotnym spostrzeżeniem, jest szybkość wy- dr hab. inż. Tadeusz Maciak
konywania się symulacji na komputerach z procesorami prof. SGSP urodził się 1949 roku w Warszawie. Studia na
różnych producentów: firmy Intel oraz AMD. Na proceso- Wydziale Elektroniki Politechniki Warszawskiej ukoń-
rach Intel symulacje są wykonywane zdecydowanie szyb- czył w roku 1973. Po studiach rozpoczął pracę w Instytu-
ciej. Powodem tego jest kompilacja źródeł przy użyciu cie Technologii Elektronowej Politechniki Warszawskiej
kompilatorów Intel zarówno do Fortrana i C++. (obecnie Instytut Mikro i Optoelektroniki). Zajmował
Pomimo podjętych prób w trakcie pisania niniejszej się problemami związanymi z optoelektroniką. Pracę
pracy nie udało się uruchomić symulacji w wersji równole- doktorską obronił na Wydziale Elektroniki Politechniki
głej FDS, wykorzystującej MPI, na klastrze obliczeniowym Warszawskiej w roku 1982. W roku 1991 rozpoczął pra-
Wydziału Informatyki Politechniki Białostockiej „Mordor cę na Wydziale Informatyki Politechniki Białostockiej.
2”. Problemem okazała się nieobecność kompilatora For- W roku 1994 obronił pracę habilitacyjną na Wydziale
tranu na wyżej wymienionym klastrze, natomiast rozpo- Elektroniki Politechniki Wrocławskiej. W roku 1998
wszechniane na stronie projektu skompilowane wersje FDS równolegle podjął pracę w Szkole Głównej Służby Po-
nie działały prawidłowo. Jest to z pewnością zagadnienie żarniczej w Warszawie. W latach 2001-2006 Dziekan
godne uwagi, dające możliwość szerszego zbadania proble- specjalności „Systemy Informatyczne w Technice i Za-
matyki prowadzenia obliczeń symulacji pożaru równolegle, rządzaniu” w Wyższej Szkole Ekonomiczno-Technicznej
z użyciem większej liczby procesorów. w Legionowie. W ostatnich latach jego zainteresowania
koncentrują się na wykorzystaniu aparatu informatycz-
Literatura nego w rozwiązywaniu zagadnień związanych z ogólnie
1. Maciak T., Czajkowski J., Matematyczne modelowa- pojętym bezpieczeństwem wewnętrzny państwa. Prowa-
nie pożaru w pomieszczeniach zamkniętych. [mate- dzi prace związane z problematyką procesu wspomaga-
riał przyjęty do publikacji]; niu podejmowania decyzji w Państwowej Straży Pożar-
2. Czajkowski P., Metody i algorytmy modelowania nej. W kręgu jego zainteresowań znajdują się również
pożaru w pomieszczeniach zamkniętych, praca dy- wszelkiego typu symulacje komputerowe zagrożeń po-
plomowa mgr., Politechnika Białostocka, Wydział żarowych oraz problematyka ewakuacji ludności z za-
Informatyki 2010. Promotor Maciak T.; grożonych obiektów.
168
mgr inż. Przemysław Czajkowski łostockiej na specjalności Inżynieria Oprogramowania.
urodził się w 1987 roku w Białymstoku. W roku 2005, Studia ukończył 2010 roku. Obecnie pracuje w firmie
po skończeniu IV Liceum Ogólnokształcącego, rozpo- komputerowej w Białymstoku.
czął studia na Wydziale Informatyki Politechniki Bia-

169

You might also like