Диссертация (1149591), страница 12
Текст из файла (страница 12)
Äëÿ äðóãèõ ïàðàìåòðîâ çàäà÷è, îïòèìàëüíîå ÷èñëî ïàðàëëåëüíûõ ïðîöåññîðîâ è ìàêñèìàëüíîå óñêîðåíèå áóäåòäðóãèì.Òàêèì îáðàçîì, ïðè èñïîëüçîâàíèè ìåòîäà ñòðåëîâèäíîé äåêîìïîçèöèèâñå ñóïåð-áëîêè íà äèàãîíàëè ìîæíî âûáèðàòü îäèíàêîâîãî ðàçìåðà, ò.ê.óìåíüøåíèå óñêîðåíèÿ â ýòîì ñëó÷àå íåçíà÷èòåëüíî.
Îïòèìàëüíîå êîëè÷åñòâî ïàðàëëåëüíûõ ïðîöåññîðîâ M ∗ äëÿ ôèêñèðîâàííîãî êîëè÷åñòâà áëîêîâN íà äèàãîíàëè ÑËÀÓ äàåòñÿ ôîðìóëîé (5.10).Áëîêè×èñëî ìóëüòèïëèêàòèâíûõ îïåðàöèéGi , i = 1, . . . , N(2N − 1)n3Ai , i = 1, . . . , N − 1(N − 1)n3Bi , i = 1, . . . , N(2N − 1)n2 lXi , i = N, . . . , 1(N − 1)n2 lÂñåãî(3N − 2)(n3 + n2 l)Òàáëèöà 5.1. ×èñëî ìóëüòèïëèêàòèâíûõ îïåðàöèé äëÿ êàæäîé ÷àñòè ìåòîäà ìàòðè÷íîéïðîãîíêè, à òàêæå ïîëíîå èõ ÷èñëî äëÿ âñåãî ìåòîäà.5.5. Ïðàêòè÷åñêèå ðåçóëüòàòûÀíàëèòè÷åñêèå îöåíêè, ïðèâåäåííûå â ïðåäûäóùåé ãëàâå, áûëè ïîäòâåðæäåíû â ïðàêòè÷åñêèõ ðàñ÷åòàõ. Ìåòîä ñòðåëîâèäíîé äåêîìïîçèöèè áûë ðåàëèçîâàí íà ÿçûêå C/C++ ñ èñïîëüçîâàíèåì âûçîâîâ ïîäïðîãðàìì äëÿ ðàáîòûñ ìàòðèöàìè áèáëèîòåêè LAPACK 3.5.0 [105].
Ïàðàëëåëèçì áûë ðåàëèçîâàí ñ81ïîìîùüþ òåõíîëîãèè OpenMP. ×èñëåííûå ýêñïåðèìåíòû ïðîâîäèëèñü íà âû÷èñëèòåëüíîé ñèñòåìå ñ îáùåé ïàìÿòüþ (SMP) è 64 ïðîöåññîðàìè Intel Xeon2.27 ÃÃö.N=1535N=307120Computational speedup (S)Computational speedup (S)141210864Analytical estimationPractical result, n=300Practical result, n=50020102030405060Number of parallel processors (M)70801816141210864Analytical estimationPractical result, n=100Practical result, n=4002020406080100Number of parallel processors (M)120Ðèñ. 5.3. Àíàëèòè÷åñêàÿ îöåíêà âû÷èñëèòåëüíîãî óñêîðåíèÿ ìåòîäà ñòðåëîâèäíîé äåêîìïîçèöèè ïî îòíîøåíèþ ê ìåòîäó ìàòðè÷íîé ïðîãîíêè (ñïëîøíàÿ êðèâàÿ) è ïðàêòè÷åñêèåðåçóëüòàòû èçìåðåíèÿ óñêîðåíèÿ (êâàäðàòèêè è êðóæî÷êè) â çàâèñèìîñòè îò ÷èñëà ïàðàëëåëüíûõ ïðîöåññîðîâ. Ðàçìåðû áëîêîâ n = 100 − 500, ÷èñëî áëîêîâ íà äèàãîíàëè N = 1535(ëåâûé ãðàôèê), N = 3071 (ïðàâûé ãðàôèê), èñïîëüçóåòñÿ îäèí âåêòîð â ïðàâîé ÷àñòè. ïðàêòè÷åñêèõ ðàñ÷åòàõ çàìåðÿëîñü òîëüêî âðåìÿ âû÷èñëåíèÿ.
Âðåìÿãåíåðàöèè áëîêîâ íå ó÷èòûâàëîñü. Áëîêè ïîëó÷àëèñü èç äèñêðåòèçàöèè ãðàíè÷íîé çàäà÷è äëÿ èíòåãðî-äèôôåðåíöèàëüíîãî óðàâíåíèÿ Ôàääååâà (4.6).Äëÿ ÷èñòîòû ýêñïåðèìåíòà, íóëåâûå ýëåìåíòû áëîêîâ çàìåíÿëèñü îòíîñèòåëüíî ìàëûìè ñëó÷àéíûìè ÷èñëàìè. Ïðàâàÿ ÷àñòü ñîñòîÿëà èç îäíîãî âåêòîðà,ò.å. l = 1.Ïîëó÷åííûå ðåçóëüòàòû äëÿ N = 1535, 3071 è n = 100 − 500 ïîêàçàíû íà ðèñóíêå 5.3. Ãðàôèêè ïðàêòè÷åñêèõ ðåçóëüòàòîâ îòðàæàþò ìàêñèìàëüíîå äîñòèãíóòîå óñêîðåíèå äëÿ äàííîãî ÷èñëà ïàðàëëåëüíûõ ïðîöåññîðîâ.Ñðåäíåå âû÷èñëèòåëüíîå óñêîðåíèå, êàê ïðàâèëî, ìåíüøå ïðèâåäåííûõ çíà÷åíèé íà 3% 5%.
Âèäíî, ÷òî ïðàêòè÷åñêèå ðåçóëüòàòû õîðîøî ñîãëàñóþòñÿñ àíàëèòè÷åñêèìè îöåíêàìè. Ïðè M N íàáëþäàåòñÿ ëèíåéíîå óñêîðåíèåè îáùèé òðåíä ïîëó÷åííîãî âû÷èñëèòåëüíîãî óñêîðåíèÿ òàêæå ñîîòâåòñòâó82åò àíàëèòè÷åñêèì ðåçóëüòàòàì. Íåáîëüøèå îòêëîíåíèÿ ìîãóò áûòü âûçâàíûíåèäåàëüíîñòüþ ðàáîòû ñ ïàìÿòüþ, à òàêæå ñèñòåìíûìè ïðîöåññàìè, âûïîëíÿþùèìèñÿ ïàðàëëåëüíî. Ïîñëåäíåå áîëüøå âñåãî ïðîÿâëÿåòñÿ ïðè M = 64.Òåì íå ìåíåå, àíàëèòè÷åñêèå îöåíêè äëÿ äàííîãî ñëó÷àÿì â öåëîì âåðíû èñëàáî çàâèñÿò îò n.Ñðàâíåíèå âðåìåíè ðåøåíèÿ ÑËÀÓ ìåòîäîì ñòðåëîâèäíîé äåêîìïîçèöèèè èçâåñòíûìè ïðîãðàììíûìè ïàêåòàìè äëÿ ðàçðåæåííûõ ìàòðèö MUMPS [107]è Intel PARDISO [108, 109] ïîêàçàíî íà ðèñóíêå 5.4. Ðåçóëüòàòû ìåòîäà ñòðåëîâèäíîé äåêîìïîçèöèè íà îäíîì ïðîöåññîðå ýòî ðåçóëüòàòû ìåòîäà ìàòðè÷íîé ïðîãîíêè.
Èç ãðàôèêîâ ÿñíî âèäíî, ÷òî äàæå ïîñëåäîâàòåëüíûé ìåòîäìàòðè÷íîé ïðîãîíêè íà îäíîì ïðîöåññîðå ÿâëÿåòñÿ áîëåå ýôôåêòèâíûì, ÷åìñòàíäàðòíûå ïðîãðàììíûå ïàêåòû. Íà ÷åòûðåõ è áîëåå ïðîöåññîðàõ ìåòîäñòðåëîâèäíîé äåêîìïîçèöèè ðàáîòàåò â íåñêîëüêî ðàç áûñòðåå ïðèâåäåííûõïðîãðàììíûõ ïàêåòîâ. Òàêæå áûëî çàìå÷åíî àíîìàëüíîå óâåëè÷åíèå âðåìåíè âû÷èñëåíèÿ ïðè èñïîëüçîâàíèè ïàêåòà Intel PARDISO ïðè íåêîòîðûõ çíà÷åíèÿõ ðàçìåðîâ áëîêîâ n (ïðàâûé ðèñóíîê 5.4). Âåðîÿòíî, îíî ñâÿçàíî ñíåîïòèìàëüíîé îðãàíèçàöèåé äàííûõ è èñïîëüçîâàíèåì ïàìÿòè äàííûì ïàêåòîì ïðè áîëüøîì ÷èñëå ïàðàëëåëüíûõ ïðîöåññîðîâ.
Äëÿ ïàêåòà MUMPSâðåìÿ âû÷èñëåíèÿ óìåíüøàåòñÿ ïðè óâåëè÷åíèè ÷èñëà ïàðàëëåëüíûõ ïðîöåññîðîâ. Êàê ðåçóëüòàò, ìåòîä ñòðåëîâèäíîé äåêîìïîçèöèè ÿâëÿåòñÿ íàèáîëååïðåäïî÷òèòåëüíûì äëÿ ïàðàëëåëüíûõ âû÷èñëåíèé ÑËÀÓ ñ áëî÷íî-òð¼õäèàãîíàëüíîé ìàòðèöåé.Ðåçóëüòàòû èñïîëüçîâàíèÿ ìåòîäà ñòðåëîâèäíîé äåêîìïîçèöèè äëÿ òèïè÷íûõ, îòíîñèòåëüíî ïðîñòûõ ñ âû÷èñëèòåëüíîé òî÷êè çðåíèÿ, çàäà÷ îïðåäåëåíèÿ àìïëèòóä ðàññåÿíèÿ íåéòðîí-äåéòðîííûõ ñòîëêíîâåíèé ïðåäñòàâëåíûâ òàáëèöå 5.2.  òàáëèöå ïðèâîäÿòñÿ çíà÷åíèÿ âðåìåí âû÷èñëåíèé àìïëèòóäðàññåÿíèÿ ñ èñïîëüçîâàíèåì ìåòîäà ïðîãîíêè íà îäíîì ïðîöåññîðå (òðåòüÿêîëîíêà) è íà 64 ïðîöåññîðàõ ñ èñïîëüçîâàíèåì ìåòîäà ñòðåëîâèäíîé äåêîìïîçèöèè (÷åòâåðòàÿ êîëîíêà) â çàâèñèìîñòè îò ÷èñëà áëîêîâ íà äèàãîíàëè83N=1535, n=300N=767, n=5001000Time of calculation (sec)350Time of calculation (sec)Decomposition methodIntel PARDISO 11.2MUMPS 4.10400300250200150100Decomposition methodIntel PARDISO 11.2MUMPS 4.108006004002005000124816 24 32 48Number of parallel processors64124816 24 32 48Number of parallel processors64Ðèñ.
5.4. Âðåìÿ âû÷èñëåíèÿ ìåòîäîì äåêîìïîçèöèè â ñðàâíåíèè ñ èçâåñòíûìè ðåøàòåëÿìèäëÿ ðàçðåæåííûõ ìàòðèö. Ðàçìåðû áëîêîâ n = 300, 500, ÷èñëî áëîêîâ íà äèàãîíàëè N =1535 (ëåâûé ãðàôèê), N = 767 (ïðàâûé ãðàôèê), èñïîëüçóåòñÿ îäèí âåêòîð â ïðàâîé ÷àñòè.ìàòðèöû N . Êðîìå ýòîãî, äàåòñÿ ïîëó÷åííîå íà ïðàêòèêå âû÷èñëèòåëüíîåóñêîðåíèå è òåîðåòè÷åñêîå, íàéäåííîå ïî ôîðìóëå (5.9).  êà÷åñòâå âðåìåíè âû÷èñëåíèÿ ïðèâîäèòñÿ ïîëíîå çàòðà÷åííîå âðåìÿ, âêëþ÷àþùåå âðåìÿíà ôîðìèðîâàíèå ìàòðèöû ÑËÀÓ, âû÷èñëåíèå ðåøåíèÿ ìåòîäîì ñòðåëîâèäíîé äåêîìïîçèöèè èëè ïðÿìûì õîäîì ìåòîäà ïðîãîíêè, à òàêæå âû÷èñëåíèåàìïëèòóä ðàññåÿíèÿ. Èç òàáëèöû âèäíî, ÷òî ïîëó÷åííîå íà ïðàêòèêå óñêîðåíèå äîñòèãàåò ïî÷òè äâóõ äåñÿòêîâ ðàç. Òåì íå ìåíåå, îíî íåñêîëüêî ìåíüøåòåîðåòè÷åñêîãî ââèäó èçìåðåíèÿ ïîëíîãî âðåìåíè, çàòðà÷åííîãî íà ðåøåíèåçàäà÷è ðàññåÿíèÿ.
Äëÿ áîëåå òðóäîåìêèõ çàäà÷ ñïåöèàëüíûõ çàìåðîâ ïðîèçâîäèòåëüíîñòè íå ïðîâîäèëîñü, õîòÿ è áûëî î÷åâèäíî, ÷òî ïðèìåíåíèå ìåòîäà ñòðåëîâèäíîé äåêîìïîçèöèè ïîçâîëèëî ñîêðàòèòü îáùåå âðåìÿ ðåøåíèÿñàìûõ òðóäîåìêèõ çàäà÷ ñ íåñêîëüêèõ äíåé äî íåñêîëüêèõ ÷àñîâ.5.6. Âûâîäû ê äàííîé ãëàâåÏðåäñòàâëåííûé ìåòîä ñòðåëîâèäíîé äåêîìïîçèöèè îáåñïå÷èâàåò ýôôåêòèâíîå ïàðàëëåëüíîå ðåøåíèå áëî÷íî-òð¼õäèàãîíàëüíîé ÑËÀÓ, âîçíèêàþùåéïîñëå äèñêðåòèçàöèè êðàåâîé çàäà÷è äëÿ s-âîëíîâîãî óðàâíåíèÿ Ôàääååâà.84ρmax , ôìNTM =1 , ñåê TM =64 , ñåê Sïðàêò Sòåîð1003000474043310.917.32006000948364314.821.25001500023146131517.624.57002100032453177618.325.310003000046293258117.925.9Òàáëèöà 5.2. Âðåìåíà âû÷èñëåíèé àìïëèòóä ðàññåÿíèÿ ñ èñïîëüçîâàíèåì ìåòîäà ïðîãîíêèíà îäíîì ïðîöåññîðå, TM =1, è íà 64 ïðîöåññîðàõ ñ èñïîëüçîâàíèåì ìåòîäà ñòðåëîâèäíîéäåêîìïîçèöèè, TM =64, â çàâèñèìîñòè îò ÷èñëà áëîêîâ íà äèàãîíàëè ìàòðèöû N .
Óñêîðåíèÿâû÷èñëåíèé òàêæå äàíû.Âû÷èñëèòåëüíîå óñêîðåíèå ïî îòíîøåíèþ ê òðàäèöèîííî èñïîëüçóåìîìó äëÿòàêîé ñèñòåìû ìåòîäó ìàòðè÷íîé ïðîãîíêè áûëî àíàëèòè÷åñêè ïîëó÷åíî. Ïîêàçàíî, ÷òî äàííûé ìåòîä ïîçâîëÿåò íà ïîðÿäîê óìåíüøèòü âðåìÿ ðåøåíèÿÑËÀÓ ïî ñðàâíåíèþ ñ ìåòîäîì ìàòðè÷íîé ïðîãîíêè. Âû÷èñëèòåëüíûå ýêñïåðèìåíòû ïîäòâåðæäàþò àíàëèòè÷åñêèå îöåíêè âû÷èñëèòåëüíîãî óñêîðåíèÿ.Ïðèìåíåíèå ìåòîäà ñòðåëîâèäíîé äåêîìïîçèöèè äëÿ ðåøåíèÿ çàäà÷è ðàññåÿíèÿ ïîçâîëèëî ñîêðàòèòü îáùåå âðåìÿ âû÷èñëåíèÿ ñàìûõ òðóäîåìêèõ çàäà÷ñ íåñêîëüêèõ äíåé äî íåñêîëüêèõ ÷àñîâ.85Ãëàâà 6Ðåçóëüòàòû âû÷èñëåíèé äàííîé ãëàâå ïðèâîäÿòñÿ ðåçóëüòàòû ðàñ÷åòîâ àìïëèòóä áèíàðíîãî ðàññåÿíèÿ è ðàçâàëà ñ èñïîëüçîâàíèåì ìåòîäîâ è ÷èñëåííûõ ñõåì îïèñàííûõ âïðåäûäóùèõ ãëàâàõ.
Ðåçóëüòàòû, ïîëó÷åííûå ðàçëè÷íûìè ìåòîäàìè, ñðàâíèâàþòñÿ ìåæäó ñîáîé, à òàêæå ñ ðåçóëüòàòàìè, èìåþùèìèñÿ â ëèòåðàòóðå.6.1. Ðåçóëüòàòû ðåøåíèÿ ìîäåëüíîé çàäà÷èÌîäåëüíàÿ çàäà÷à (3.1) áûëà ðåøåíà ÷èñëåííî è êîýôôèöèåíòû ðàçëîæåíèÿ êîìïîíåíòû Ôàääååâà àìïëèòóäû ðàçâàëà áûëè íàéäåíû ñ ïîìîùüþïðîåêöèîííîãî ìåòîäà, îïèñàííîãî â ðàçäåëå 4.3.1. Äëÿ ðàñ÷åòîâ èñïîëüçîâàëñÿ ïîòåíöèàë Áàðãìàííà [50] ñ ïàðàìåòðàìè, îáåñïå÷èâàþùèìè ýíåðãèþîñíîâíîãî ñîñòîÿíèÿ äâóõ÷àñòè÷íîé çàäà÷è (2.3) −2.22439 ÌýÂ.
Ðàñ÷åòû áûëè âûïîëíåíû äëÿ ýíåðãèè â ëàáîðàòîðíîé ñèñòåìå îòñ÷åòà Elab = 14.0 ÌýÂ.Ïîëó÷åííûå àíàëèòè÷åñêèå ôîðìóëû äëÿ àñèìïòîòèê àìïëèòóäíûõ ôóíêöèé ìîäåëüíîé çàäà÷è (3.1) ãëàâû 3 ïîçâîëÿþò ïðîâåðèòü êà÷åñòâî ïðåäëîæåííîãî â äèññåðòàöèè ïîäõîäà äëÿ âû÷èñëåíèÿ àìïëèòóäíûõ ôóíêöèé.Ïðåæäå âñåãî, èíòåðåñíî ÷èñëåííî ïðîâåðèòü ñõîäèìîñòü èíòåãðàëà (3.21) êàñèìïòîòèêå (3.24) ïðè ñòðåìëåíèè çíà÷åíèÿ âåðõíåãî ïðåäåëà èíòåãðàëà yê ∞. Äàííûå ãðàôèêè ïðåäñòàâëåíû íà Ðèñ.
6.16.2. ßñíî âèäíà îñöèëëÿòîðíàÿ ñõîäèìîñòü çíà÷åíèÿ èíòåãðàëà ê ñîîòâåòñòâóþùåé àñèìïòîòèêå ïðèy → ∞. Ýòè îñöèëëÿöèè ïðîÿâëÿþòñÿ è â áèíàðíîé àìïëèòóäíîé ôóíêöèèa0 (q, y) (3.10). Êàê âèäíî èç ôîðìóëû (3.25), àñèìïòîòèêà àìïëèòóäíîé ôóíêöèè âêëþ÷àåò â ñåáÿ äâà îñöèëëèðóþùèõ, óáûâàþùèõ ñëàãàåìûõ. ×èñëåííîåèíòåãðèðîâàíèå ïî ôîðìóëå (3.10) ïîäòâåðæäàåò ñõîäèìîñòü èíòåãðàëà ê ñâîåé àñèìïòîòèêå ïðè y → ∞. Âû÷èñëåííàÿ àìïëèòóäíàÿ ôóíêöèÿ a0 (q, y) âçàâèñèìîñòè îò çíà÷åíèÿ y ïîêàçàíà íà Ðèñ. 6.36.4. Îñöèëëÿöèè, âûçâàí86Re0.370.3650.360.3550.350.3450.340.3350.33Numerical integrationAsymptotics50100150200250300Imy0.280.2750.270.2650.260.2550.250.2450.24Numerical integrationAsymptotics50100150200250300yÐèñ.
6.1. Âåùåñòâåííàÿ è ìíèìàÿ ÷àñòè èíòåãðàëà (3.21), âû÷èñëåííîãî ÷èñëåííî, èåãî àñèìïòîòèêè (3.24) â çàâèñèìîñòè îò çíà÷åíèÿ âåðõíåãî ïðåäåëà èíòåãðèðîâàíèÿy . Îñöèëëÿòîðíûé õàðàêòåð ñõîäèìîñòè èíòåãðàëà ïðè y → ∞ ê ïîñòîÿííîìó çíà÷åíèþ ÿñíî âèäåí. Çíà÷åíèÿ ïàðàìåòðîâ âûáðàíû ñîãëàñóþùèìèñÿ ñ èññëåäóåìîé√çàäà÷åé: p = 0.06, y0 = 4/ 3.íûå ñëàãàåìûì ïðîïîðöèîíàëüíûì√1,( E−q)ÿâëÿþòñÿ äîìèíèðóþùèìè ââèäó√îòíîñèòåëüíîé ìàëîñòè ðàçíîñòè E − q .  ñâîþ î÷åðåäü, îñöèëëÿöèè, âûçâàííûå ñëàãàåìûì ïðîïîðöèîíàëüíûì√1,( E+q)íà ðèñóíêàõ íîñÿò õàðàêòåðìàëûõ âîçìóùåíèé.Àìïëèòóäíàÿ ôóíêöèÿ áèíàðíîãî êàíàëà êàê ôóíêöèÿ y = ρmax äëÿ ñëó÷àÿ ìîäåëüíîé çàäà÷è (3.1) ïîêàçàíà íà Ðèñ. 6.5 è àíàëîãè÷íîì Ðèñ.