<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.linuxformat.ru/wiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wiki.linuxformat.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=LXF168%3A%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C</id>
		<title>LXF168:Вы­чис­ления. MPI-про­грам­мы и Жизнь - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.linuxformat.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=LXF168%3A%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C"/>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;action=history"/>
		<updated>2026-05-13T18:48:02Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.19.20+dfsg-0+deb7u3</generator>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19473&amp;oldid=prev</id>
		<title>Olkol: /* Иг­ра «Жизнь» */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19473&amp;oldid=prev"/>
				<updated>2018-11-10T19:23:52Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Иг­ра «Жизнь»&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Предыдущая&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Версия 19:23, 10 ноября 2018&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 336:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 336:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Эту за­да­чу вы­пол­ня­ют опе­ра­то­ры пе­ре­да­чи MPI_Send и прие­ма MPI_Recv. Они долж­ны быть ком­пле­мен­тар­ны­ми, то есть ка­ж­дый опе­ра­тор пе­ре­да­чи дан­ных в од­ном про­цес­се обя­за­тель­но обя­зан иметь со­от­вет­ст­вую­щий ему опе­ра­тор прие­ма в дру­гом про­цес­се. В про­тив­ном слу­чае про­изой­дет ненор­маль­ное за­вер­шение ра­бо­ты MPI про­грам­мы. Под­роб­но­сти об ис­поль­зо­вании этих команд и опи­сание их ар­гу­мен­тов мож­но по­смот­реть с по­мо­щью ко­ман­ды man.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Эту за­да­чу вы­пол­ня­ют опе­ра­то­ры пе­ре­да­чи MPI_Send и прие­ма MPI_Recv. Они долж­ны быть ком­пле­мен­тар­ны­ми, то есть ка­ж­дый опе­ра­тор пе­ре­да­чи дан­ных в од­ном про­цес­се обя­за­тель­но обя­зан иметь со­от­вет­ст­вую­щий ему опе­ра­тор прие­ма в дру­гом про­цес­се. В про­тив­ном слу­чае про­изой­дет ненор­маль­ное за­вер­шение ра­бо­ты MPI про­грам­мы. Под­роб­но­сти об ис­поль­зо­вании этих команд и опи­сание их ар­гу­мен­тов мож­но по­смот­реть с по­мо­щью ко­ман­ды man.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Соб­ст­вен­но го­во­ря, все. Ка­жет­ся, ниче­го слож­но­го, но ес­ли хо­чет­ся уве­ли­чить чис­ло па­рал­лель­ных про­цес­сов, то при­дет­ся ак­ку­рат­но об­ра­ба­ты­вать боль­ше границ и сле­дить за со­гла­со­ванием прие­ма-пе­ре­да­чи ин­фор­ма­ции, то есть при­дет­ся ду­мать. Это и есть основ­ная слож­ность! Но за­то MPI-про­грам­ма на двух про­цес­сах вы­пол­ня­ет­ся при­мер­но за 110 се­кунд вме­сто 180 на сфе­ри­че­­ском в ва­куу­ме Intel(R) Core(TM)2 Duo од­но­вре­мен­но с на­бо­ром это­го тек­ста. Ус­ко­рение не в двой­ку, но доста­точ­но зна­чи­тель­ное, что­бы за него по­бо­роть­ся.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;{{Врезка|right|Заголовок= Об­рат­ная связь|Ширина=20%|Содержание=При­гла­ша­ем вы­ска­зать­ся по­тен­ци­аль­ных ав­то­ров ста­тей по па­рал­лель­ным вы­чис­лениям – цен­ные пред­ло­жения, кри­ти­ку и со­ве­ты при­сы­лай­те по элек­трон­ной поч­те: E.M.Baldin@inp.nsk.su, ostap@ssd.sscc.ru. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;{{Врезка|right|Заголовок= Об­рат­ная связь|Ширина=20%|Содержание=При­гла­ша­ем вы­ска­зать­ся по­тен­ци­аль­ных ав­то­ров ста­тей по па­рал­лель­ным вы­чис­лениям – цен­ные пред­ло­жения, кри­ти­ку и со­ве­ты при­сы­лай­те по элек­трон­ной поч­те: E.M.Baldin@inp.nsk.su, ostap@ssd.sscc.ru. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;}} &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;}} &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Соб­ст­вен­но го­во­ря, все. Ка­жет­ся, ниче­го слож­но­го, но ес­ли хо­чет­ся уве­ли­чить чис­ло па­рал­лель­ных про­цес­сов, то при­дет­ся ак­ку­рат­но об­ра­ба­ты­вать боль­ше границ и сле­дить за со­гла­со­ванием прие­ма-пе­ре­да­чи ин­фор­ма­ции, то есть при­дет­ся ду­мать. Это и есть основ­ная слож­ность! Но за­то MPI-про­грам­ма на двух про­цес­сах вы­пол­ня­ет­ся при­мер­но за 110 се­кунд вме­сто 180 на сфе­ри­че­­ском в ва­куу­ме Intel(R) Core(TM)2 Duo од­но­вре­мен­но с на­бо­ром это­го тек­ста. Ус­ко­рение не в двой­ку, но доста­точ­но зна­чи­тель­ное, что­бы за него по­бо­роть­ся.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;На при­ме­ре про­грам­мы мо­де­ли­ро­вания иг­ры «Жизнь» мы рас­смот­ре­ли са­мые ба­зо­вые воз­мож­но­сти MPI. Из со­тен функ­ций, опи­сан­ных в те­ку­щем стан­дар­те MPI 3.0, мы ис­поль­зо­ва­ли толь­ко шесть. Стан­дарт ори­ен­ти­ро­ван на ком­форт­ную ра­бо­ту при рас­па­рал­ле­ли­вании ши­ро­ко­го спек­тра за­дач, и для это­го в нем при­сут­ст­ву­ют раз­но­об­раз­ные груп­пы функ­ций для ком­муника­ций ме­ж­ду дву­мя про­цес­са­ми, ком­муника­ций внут­ри груп­пы про­цес­сов, ра­бо­ты с груп­па­ми про­цес­сов, кэ­ши­ро­вания дан­ных и мно­гого дру­го­го. |&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;На при­ме­ре про­грам­мы мо­де­ли­ро­вания иг­ры «Жизнь» мы рас­смот­ре­ли са­мые ба­зо­вые воз­мож­но­сти MPI. Из со­тен функ­ций, опи­сан­ных в те­ку­щем стан­дар­те MPI 3.0, мы ис­поль­зо­ва­ли толь­ко шесть. Стан­дарт ори­ен­ти­ро­ван на ком­форт­ную ра­бо­ту при рас­па­рал­ле­ли­вании ши­ро­ко­го спек­тра за­дач, и для это­го в нем при­сут­ст­ву­ют раз­но­об­раз­ные груп­пы функ­ций для ком­муника­ций ме­ж­ду дву­мя про­цес­са­ми, ком­муника­ций внут­ри груп­пы про­цес­сов, ра­бо­ты с груп­па­ми про­цес­сов, кэ­ши­ро­вания дан­ных и мно­гого дру­го­го. |&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Olkol</name></author>	</entry>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19472&amp;oldid=prev</id>
		<title>Olkol: /* Иг­ра «Жизнь» */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19472&amp;oldid=prev"/>
				<updated>2018-11-10T19:23:10Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Иг­ра «Жизнь»&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Предыдущая&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Версия 19:23, 10 ноября 2018&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 338:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 338:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Соб­ст­вен­но го­во­ря, все. Ка­жет­ся, ниче­го слож­но­го, но ес­ли хо­чет­ся уве­ли­чить чис­ло па­рал­лель­ных про­цес­сов, то при­дет­ся ак­ку­рат­но об­ра­ба­ты­вать боль­ше границ и сле­дить за со­гла­со­ванием прие­ма-пе­ре­да­чи ин­фор­ма­ции, то есть при­дет­ся ду­мать. Это и есть основ­ная слож­ность! Но за­то MPI-про­грам­ма на двух про­цес­сах вы­пол­ня­ет­ся при­мер­но за 110 се­кунд вме­сто 180 на сфе­ри­че­­ском в ва­куу­ме Intel(R) Core(TM)2 Duo од­но­вре­мен­но с на­бо­ром это­го тек­ста. Ус­ко­рение не в двой­ку, но доста­точ­но зна­чи­тель­ное, что­бы за него по­бо­роть­ся.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Соб­ст­вен­но го­во­ря, все. Ка­жет­ся, ниче­го слож­но­го, но ес­ли хо­чет­ся уве­ли­чить чис­ло па­рал­лель­ных про­цес­сов, то при­дет­ся ак­ку­рат­но об­ра­ба­ты­вать боль­ше границ и сле­дить за со­гла­со­ванием прие­ма-пе­ре­да­чи ин­фор­ма­ции, то есть при­дет­ся ду­мать. Это и есть основ­ная слож­ность! Но за­то MPI-про­грам­ма на двух про­цес­сах вы­пол­ня­ет­ся при­мер­но за 110 се­кунд вме­сто 180 на сфе­ри­че­­ском в ва­куу­ме Intel(R) Core(TM)2 Duo од­но­вре­мен­но с на­бо­ром это­го тек­ста. Ус­ко­рение не в двой­ку, но доста­точ­но зна­чи­тель­ное, что­бы за него по­бо­роть­ся.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;{{Врезка|right|Заголовок= Об­рат­ная связь|Ширина=&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;10&lt;/del&gt;%|Содержание=При­гла­ша­ем вы­ска­зать­ся по­тен­ци­аль­ных ав­то­ров ста­тей по па­рал­лель­ным вы­чис­лениям – цен­ные пред­ло­жения, кри­ти­ку и со­ве­ты при­сы­лай­те по элек­трон­ной поч­те: E.M.Baldin@inp.nsk.su, ostap@ssd.sscc.ru. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;{{Врезка|right|Заголовок= Об­рат­ная связь|Ширина=&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;20&lt;/ins&gt;%|Содержание=При­гла­ша­ем вы­ска­зать­ся по­тен­ци­аль­ных ав­то­ров ста­тей по па­рал­лель­ным вы­чис­лениям – цен­ные пред­ло­жения, кри­ти­ку и со­ве­ты при­сы­лай­те по элек­трон­ной поч­те: E.M.Baldin@inp.nsk.su, ostap@ssd.sscc.ru. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;}} &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;}} &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;На при­ме­ре про­грам­мы мо­де­ли­ро­вания иг­ры «Жизнь» мы рас­смот­ре­ли са­мые ба­зо­вые воз­мож­но­сти MPI. Из со­тен функ­ций, опи­сан­ных в те­ку­щем стан­дар­те MPI 3.0, мы ис­поль­зо­ва­ли толь­ко шесть. Стан­дарт ори­ен­ти­ро­ван на ком­форт­ную ра­бо­ту при рас­па­рал­ле­ли­вании ши­ро­ко­го спек­тра за­дач, и для это­го в нем при­сут­ст­ву­ют раз­но­об­раз­ные груп­пы функ­ций для ком­муника­ций ме­ж­ду дву­мя про­цес­са­ми, ком­муника­ций внут­ри груп­пы про­цес­сов, ра­бо­ты с груп­па­ми про­цес­сов, кэ­ши­ро­вания дан­ных и мно­гого дру­го­го. |&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;На при­ме­ре про­грам­мы мо­де­ли­ро­вания иг­ры «Жизнь» мы рас­смот­ре­ли са­мые ба­зо­вые воз­мож­но­сти MPI. Из со­тен функ­ций, опи­сан­ных в те­ку­щем стан­дар­те MPI 3.0, мы ис­поль­зо­ва­ли толь­ко шесть. Стан­дарт ори­ен­ти­ро­ван на ком­форт­ную ра­бо­ту при рас­па­рал­ле­ли­вании ши­ро­ко­го спек­тра за­дач, и для это­го в нем при­сут­ст­ву­ют раз­но­об­раз­ные груп­пы функ­ций для ком­муника­ций ме­ж­ду дву­мя про­цес­са­ми, ком­муника­ций внут­ри груп­пы про­цес­сов, ра­бо­ты с груп­па­ми про­цес­сов, кэ­ши­ро­вания дан­ных и мно­гого дру­го­го. |&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Olkol</name></author>	</entry>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19471&amp;oldid=prev</id>
		<title>Olkol: /* Иг­ра «Жизнь» */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19471&amp;oldid=prev"/>
				<updated>2018-11-10T19:21:43Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Иг­ра «Жизнь»&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Предыдущая&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Версия 19:21, 10 ноября 2018&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 165:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 165:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Со­стояния всех кле­ток вме­сте об­ра­зу­ют со­стояние все­го кле­точ­но­го ав­то­ма­та. Со­стояние кле­точ­но­го ав­то­ма­та ме­ня­ет­ся по так­там, в дис­крет­ном вре­мени. При смене со­стояния кле­точ­но­го ав­то­ма­та со­стояния всех об­ра­зую­щих его кле­ток ме­ня­ют­ся од­но­вре­мен­но. Для ка­ж­дой клет­ки но­вое со­стояние вы­чис­ля­ет­ся по оди­на­ко­во­му для всех кле­ток пра­ви­лу. Вход­ные дан­ные для пра­ви­ла – со­стояния са­мой клет­ки и ее вось­ми со­се­дей на i-м так­те. Ре­зуль­та­том бу­дет со­стояние этой клет­ки на (i+1)-м так­те. По­доб­ные ал­го­рит­мы за­ме­ча­тель­но па­рал­ле­лят­ся. Так­же ин­те­рес­на их осо­бен­ность, со­стоя­щая в том, что вре­мя на од­ну ите­ра­цию не за­ви­сит от со­стояния ав­то­ма­та.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Со­стояния всех кле­ток вме­сте об­ра­зу­ют со­стояние все­го кле­точ­но­го ав­то­ма­та. Со­стояние кле­точ­но­го ав­то­ма­та ме­ня­ет­ся по так­там, в дис­крет­ном вре­мени. При смене со­стояния кле­точ­но­го ав­то­ма­та со­стояния всех об­ра­зую­щих его кле­ток ме­ня­ют­ся од­но­вре­мен­но. Для ка­ж­дой клет­ки но­вое со­стояние вы­чис­ля­ет­ся по оди­на­ко­во­му для всех кле­ток пра­ви­лу. Вход­ные дан­ные для пра­ви­ла – со­стояния са­мой клет­ки и ее вось­ми со­се­дей на i-м так­те. Ре­зуль­та­том бу­дет со­стояние этой клет­ки на (i+1)-м так­те. По­доб­ные ал­го­рит­мы за­ме­ча­тель­но па­рал­ле­лят­ся. Так­же ин­те­рес­на их осо­бен­ность, со­стоя­щая в том, что вре­мя на од­ну ите­ра­цию не за­ви­сит от со­стояния ав­то­ма­та.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;{{Врезка|left|Заголовок= |Ширина=98%|Содержание=&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Клас­си­фи­ка­ция па­рал­лель­ных ком­пь­ю­те­ров&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;{{Врезка|left|Заголовок= &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Клас­си­фи­ка­ция па­рал­лель­ных ком­пь­ю­те­ров&lt;/ins&gt;|Ширина=98%|Содержание=Со­вре­мен­ные па­рал­лель­ные ком­пь­ю­те­ры мож­но раз­де­лить на: па­рал­лель­ные век­тор­ные сис­те­мы (PVP), сим­мет­рич­ные муль­ти­про­цес­сор­ные сис­те­мы (SMP), мас­сив­но-па­рал­лель­ные сис­те­мы (MPP), сис­те­мы с неод­но­род­ным досту­пом к па­мя­ти (NUMA) и кла­сте­ры.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Со­вре­мен­ные па­рал­лель­ные ком­пь­ю­те­ры мож­но раз­де­лить на: па­рал­лель­ные век­тор­ные сис­те­мы (PVP), сим­мет­рич­ные муль­ти­про­цес­сор­ные сис­те­мы (SMP), мас­сив­но-па­рал­лель­ные сис­те­мы (MPP), сис­те­мы с неод­но­род­ным досту­пом к па­мя­ти (NUMA) и кла­сте­ры.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;При­ме­ром па­рал­лель­ной век­тор­ной сис­те­мы (PVP) яв­ля­ет­ся пер­вый су­пер­ком­пь­ю­тер CRAY-I, ко­то­рый был соз­дан в 1975 го­ду. Од­но вре­мя по­ня­тия «па­рал­лель­ные век­тор­ные сис­те­мы» и «су­пер­ком­пь­ю­те­ры» бы­ли си­нонима­ми, но сей­час в TOP500 (http://www.top500.org/) клас­си­че­­ских PVP не оста­лось со­всем.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;При­ме­ром па­рал­лель­ной век­тор­ной сис­те­мы (PVP) яв­ля­ет­ся пер­вый су­пер­ком­пь­ю­тер CRAY-I, ко­то­рый был соз­дан в 1975 го­ду. Од­но вре­мя по­ня­тия «па­рал­лель­ные век­тор­ные сис­те­мы» и «су­пер­ком­пь­ю­те­ры» бы­ли си­нонима­ми, но сей­час в TOP500 (http://www.top500.org/) клас­си­че­­ских PVP не оста­лось со­всем.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Olkol</name></author>	</entry>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19470&amp;oldid=prev</id>
		<title>Olkol: /* Иг­ра «Жизнь» */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19470&amp;oldid=prev"/>
				<updated>2018-11-10T19:21:04Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Иг­ра «Жизнь»&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Предыдущая&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Версия 19:21, 10 ноября 2018&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 165:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 165:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Со­стояния всех кле­ток вме­сте об­ра­зу­ют со­стояние все­го кле­точ­но­го ав­то­ма­та. Со­стояние кле­точ­но­го ав­то­ма­та ме­ня­ет­ся по так­там, в дис­крет­ном вре­мени. При смене со­стояния кле­точ­но­го ав­то­ма­та со­стояния всех об­ра­зую­щих его кле­ток ме­ня­ют­ся од­но­вре­мен­но. Для ка­ж­дой клет­ки но­вое со­стояние вы­чис­ля­ет­ся по оди­на­ко­во­му для всех кле­ток пра­ви­лу. Вход­ные дан­ные для пра­ви­ла – со­стояния са­мой клет­ки и ее вось­ми со­се­дей на i-м так­те. Ре­зуль­та­том бу­дет со­стояние этой клет­ки на (i+1)-м так­те. По­доб­ные ал­го­рит­мы за­ме­ча­тель­но па­рал­ле­лят­ся. Так­же ин­те­рес­на их осо­бен­ность, со­стоя­щая в том, что вре­мя на од­ну ите­ра­цию не за­ви­сит от со­стояния ав­то­ма­та.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Со­стояния всех кле­ток вме­сте об­ра­зу­ют со­стояние все­го кле­точ­но­го ав­то­ма­та. Со­стояние кле­точ­но­го ав­то­ма­та ме­ня­ет­ся по так­там, в дис­крет­ном вре­мени. При смене со­стояния кле­точ­но­го ав­то­ма­та со­стояния всех об­ра­зую­щих его кле­ток ме­ня­ют­ся од­но­вре­мен­но. Для ка­ж­дой клет­ки но­вое со­стояние вы­чис­ля­ет­ся по оди­на­ко­во­му для всех кле­ток пра­ви­лу. Вход­ные дан­ные для пра­ви­ла – со­стояния са­мой клет­ки и ее вось­ми со­се­дей на i-м так­те. Ре­зуль­та­том бу­дет со­стояние этой клет­ки на (i+1)-м так­те. По­доб­ные ал­го­рит­мы за­ме­ча­тель­но па­рал­ле­лят­ся. Так­же ин­те­рес­на их осо­бен­ность, со­стоя­щая в том, что вре­мя на од­ну ите­ра­цию не за­ви­сит от со­стояния ав­то­ма­та.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;{{Врезка|left|Заголовок= |Ширина=98%|Содержание=Клас­си­фи­ка­ция па­рал­лель­ных ком­пь­ю­те­ров&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Со­вре­мен­ные па­рал­лель­ные ком­пь­ю­те­ры мож­но раз­де­лить на: па­рал­лель­ные век­тор­ные сис­те­мы (PVP), сим­мет­рич­ные муль­ти­про­цес­сор­ные сис­те­мы (SMP), мас­сив­но-па­рал­лель­ные сис­те­мы (MPP), сис­те­мы с неод­но­род­ным досту­пом к па­мя­ти (NUMA) и кла­сте­ры.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;При­ме­ром па­рал­лель­ной век­тор­ной сис­те­мы (PVP) яв­ля­ет­ся пер­вый су­пер­ком­пь­ю­тер CRAY-I, ко­то­рый был соз­дан в 1975 го­ду. Од­но вре­мя по­ня­тия «па­рал­лель­ные век­тор­ные сис­те­мы» и «су­пер­ком­пь­ю­те­ры» бы­ли си­нонима­ми, но сей­час в TOP500 (http://www.top500.org/) клас­си­че­­ских PVP не оста­лось со­всем.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Сим­мет­рич­ные муль­ти­про­цес­сор­ные сис­те­мы (SMP) со­дер­жат несколь­ко оди­на­ко­вых про­цес­со­ров и об­щую па­мять. Все про­цес­со­ры име­ют оди­на­ко­вую ско­рость досту­па к об­щей па­мя­ти. Имея по­сле­до­ва­тель­ную реа­ли­за­цию неко­то­рой про­грам­мы, как пра­ви­ло, мож­но от­но­си­тель­но лег­ко по­стро­ить ее па­рал­лель­ную реа­ли­за­цию для SMP. Ос­нов­ной недоста­ток SMP – пло­хая мас­шта­би­руе­мость. Су­ще­ст­ву­ют доступ­ные SMP-сис­те­мы с де­сят­ка­ми про­цес­со­ров, но в спи­ске TOP500 нет ни од­ной из них.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Ком­пь­ю­те­ры клас­са MPP (мас­сив­но-па­рал­лель­ные сис­те­мы) со­сто­ят из уз­лов, объ­е­динен­ных вы­со­ко­ско­ро­ст­ным ком­му­та­то­ром. Узел со­дер­жит один или несколь­ко про­цес­со­ров и па­мять. Узел не име­ет досту­па к па­мя­ти дру­гих уз­лов. Та­кие сис­те­мы, в от­ли­чие от SMP, хо­ро­шо мас­шта­би­ру­ют­ся. Чис­ло уз­лов в са­мых боль­ших MPP-сис­те­мах дости­га­ет со­тен ты­сяч. За это при­хо­дит­ся пла­тить, так как па­рал­лель­ную про­грам­му для MPP-сис­те­мы, в от­ли­чие от SMP, по­стро­ить сложнее. Про­цес­сы, вы­пол­няю­щие­ся на раз­ных уз­лах, не име­ют об­щей па­мя­ти, и все взаи­мо­дей­ст­вие ме­ж­ду ними де­ла­ет­ся с по­мо­щью по­сыл­ки со­об­щений. На но­ябрь 2012 г. в TOP500 на­хо­дит­ся 89 клас­си­че­­ских MPP-су­пер­ком­пь­ю­те­ров, вклю­чая пер­вые две по­зи­ции.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Сис­те­мы с неод­но­род­ным досту­пом к па­мя­ти (NUMA) яв­ля­ют­ся гиб­ри­дом SMP и MPP. Фи­зи­че­­ски вся па­мять в NUMA рас­пре­де­ле­на ме­ж­ду уз­ла­ми, как в MPP. Но при этом под­дер­жи­ва­ет­ся еди­ное про­стран­ст­во па­мя­ти, как в SMP. То есть из уз­ла мож­но об­ра­тить­ся к па­мя­ти в лю­бом дру­гом уз­ле. Вре­мя досту­па к сво­ей, локаль­ной па­мя­ти мень­ше, чем к па­мя­ти дру­го­го уз­ла.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Кла­стер – это де­ше­вый ана­лог MPP-сис­те­мы. В нем вме­сто ско­ро­ст­но­го ком­му­та­то­ра ис­поль­зу­ет­ся обы­чая сеть; таковые ста­но­вят­ся все бы­ст­рее и бы­ст­рее. Ес­ли MPP по­ка еще вы­де­ля­ют­ся мо­щью, то кла­сте­ры бе­рут мас­со­во­стью, ибо 411 су­пер­ком­пь­ю­те­ров, остаю­щие­ся по­сле вы­чи­тания MPP из TOP500, яв­ля­ют­ся кла­стер­ны­ми ре­шения­ми. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;}} &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Сле­ду­ет понимать, что кле­точ­ный ав­то­мат – это аб­ст­ракт­ная мо­дель. В ней пред­по­ла­га­ет­ся бес­конеч­ное чис­ло кле­ток. Ре­аль­ные ком­пь­ю­те­ры об­ла­да­ют конеч­ны­ми ре­сур­са­ми па­мя­ти и вре­мени. По­это­му при мо­де­ли­ро­вании кле­точ­но­го ав­то­ма­та клет­ки раз­ме­ща­ют­ся в мас­си­ве конеч­ных раз­ме­ров. Для всех кле­ток, не ле­жа­щих на границах мас­си­ва, ра­бо­та­ют пра­ви­ла мо­де­ли­руе­мо­го кле­точ­но­го ав­то­ма­та без ка­ких-ли­бо из­менений. Об­ра­бот­ка же гранич­ных кле­ток про­из­во­дит­ся несколь­ко ина­че. Два наи­бо­лее рас­про­странен­ных спо­со­ба об­ра­бот­ки – за­мы­кание граней (из пря­мо­уголь­но­го мас­си­ва по­лу­ча­ет­ся трех­мер­ный тор) и ис­поль­зо­вание ну­ле­вых зна­чений для тех со­седних кле­ток из ок­ре­ст­но­сти клет­ки на границе, ко­то­рые ле­жат за пре­де­ла­ми мас­си­ва.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Сле­ду­ет понимать, что кле­точ­ный ав­то­мат – это аб­ст­ракт­ная мо­дель. В ней пред­по­ла­га­ет­ся бес­конеч­ное чис­ло кле­ток. Ре­аль­ные ком­пь­ю­те­ры об­ла­да­ют конеч­ны­ми ре­сур­са­ми па­мя­ти и вре­мени. По­это­му при мо­де­ли­ро­вании кле­точ­но­го ав­то­ма­та клет­ки раз­ме­ща­ют­ся в мас­си­ве конеч­ных раз­ме­ров. Для всех кле­ток, не ле­жа­щих на границах мас­си­ва, ра­бо­та­ют пра­ви­ла мо­де­ли­руе­мо­го кле­точ­но­го ав­то­ма­та без ка­ких-ли­бо из­менений. Об­ра­бот­ка же гранич­ных кле­ток про­из­во­дит­ся несколь­ко ина­че. Два наи­бо­лее рас­про­странен­ных спо­со­ба об­ра­бот­ки – за­мы­кание граней (из пря­мо­уголь­но­го мас­си­ва по­лу­ча­ет­ся трех­мер­ный тор) и ис­поль­зо­вание ну­ле­вых зна­чений для тех со­седних кле­ток из ок­ре­ст­но­сти клет­ки на границе, ко­то­рые ле­жат за пре­де­ла­ми мас­си­ва.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;По­сле­до­ва­тель­ная про­грам­ма для «Жизни» (без про­це­дур за­дания на­чаль­ных зна­чений и пе­ча­ти или со­хранения ре­зуль­та­та) вы­гля­дит при­мер­но сле­дую­щим об­ра­зом:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;По­сле­до­ва­тель­ная про­грам­ма для «Жизни» (без про­це­дур за­дания на­чаль­ных зна­чений и пе­ча­ти или со­хранения ре­зуль­та­та) вы­гля­дит при­мер­но сле­дую­щим об­ра­зом:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;#define QTY_STEPS 8192&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;#define QTY_STEPS 8192&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;#define SIZE_ARRAY 1024&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;#define SIZE_ARRAY 1024&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;char ar[2][SIZE_ARRAY][SIZE_ARRAY];&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;char ar[2][SIZE_ARRAY][SIZE_ARRAY];&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 327:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 340:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Соб­ст­вен­но го­во­ря, все. Ка­жет­ся, ниче­го слож­но­го, но ес­ли хо­чет­ся уве­ли­чить чис­ло па­рал­лель­ных про­цес­сов, то при­дет­ся ак­ку­рат­но об­ра­ба­ты­вать боль­ше границ и сле­дить за со­гла­со­ванием прие­ма-пе­ре­да­чи ин­фор­ма­ции, то есть при­дет­ся ду­мать. Это и есть основ­ная слож­ность! Но за­то MPI-про­грам­ма на двух про­цес­сах вы­пол­ня­ет­ся при­мер­но за 110 се­кунд вме­сто 180 на сфе­ри­че­­ском в ва­куу­ме Intel(R) Core(TM)2 Duo од­но­вре­мен­но с на­бо­ром это­го тек­ста. Ус­ко­рение не в двой­ку, но доста­точ­но зна­чи­тель­ное, что­бы за него по­бо­роть­ся.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Соб­ст­вен­но го­во­ря, все. Ка­жет­ся, ниче­го слож­но­го, но ес­ли хо­чет­ся уве­ли­чить чис­ло па­рал­лель­ных про­цес­сов, то при­дет­ся ак­ку­рат­но об­ра­ба­ты­вать боль­ше границ и сле­дить за со­гла­со­ванием прие­ма-пе­ре­да­чи ин­фор­ма­ции, то есть при­дет­ся ду­мать. Это и есть основ­ная слож­ность! Но за­то MPI-про­грам­ма на двух про­цес­сах вы­пол­ня­ет­ся при­мер­но за 110 се­кунд вме­сто 180 на сфе­ри­че­­ском в ва­куу­ме Intel(R) Core(TM)2 Duo од­но­вре­мен­но с на­бо­ром это­го тек­ста. Ус­ко­рение не в двой­ку, но доста­точ­но зна­чи­тель­ное, что­бы за него по­бо­роть­ся.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;{{Врезка|right|Заголовок= Об­рат­ная связь|Ширина=10%|Содержание=При­гла­ша­ем вы­ска­зать­ся по­тен­ци­аль­ных ав­то­ров ста­тей по па­рал­лель­ным вы­чис­лениям – цен­ные пред­ло­жения, кри­ти­ку и со­ве­ты при­сы­лай­те по элек­трон­ной поч­те: E.M.Baldin@inp.nsk.su, ostap@ssd.sscc.ru. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;}} &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;На при­ме­ре про­грам­мы мо­де­ли­ро­вания иг­ры «Жизнь» мы рас­смот­ре­ли са­мые ба­зо­вые воз­мож­но­сти MPI. Из со­тен функ­ций, опи­сан­ных в те­ку­щем стан­дар­те MPI 3.0, мы ис­поль­зо­ва­ли толь­ко шесть. Стан­дарт ори­ен­ти­ро­ван на ком­форт­ную ра­бо­ту при рас­па­рал­ле­ли­вании ши­ро­ко­го спек­тра за­дач, и для это­го в нем при­сут­ст­ву­ют раз­но­об­раз­ные груп­пы функ­ций для ком­муника­ций ме­ж­ду дву­мя про­цес­са­ми, ком­муника­ций внут­ри груп­пы про­цес­сов, ра­бо­ты с груп­па­ми про­цес­сов, кэ­ши­ро­вания дан­ных и мно­гого дру­го­го. |&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;На при­ме­ре про­грам­мы мо­де­ли­ро­вания иг­ры «Жизнь» мы рас­смот­ре­ли са­мые ба­зо­вые воз­мож­но­сти MPI. Из со­тен функ­ций, опи­сан­ных в те­ку­щем стан­дар­те MPI 3.0, мы ис­поль­зо­ва­ли толь­ко шесть. Стан­дарт ори­ен­ти­ро­ван на ком­форт­ную ра­бо­ту при рас­па­рал­ле­ли­вании ши­ро­ко­го спек­тра за­дач, и для это­го в нем при­сут­ст­ву­ют раз­но­об­раз­ные груп­пы функ­ций для ком­муника­ций ме­ж­ду дву­мя про­цес­са­ми, ком­муника­ций внут­ри груп­пы про­цес­сов, ра­бо­ты с груп­па­ми про­цес­сов, кэ­ши­ро­вания дан­ных и мно­гого дру­го­го. |&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Olkol</name></author>	</entry>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19469&amp;oldid=prev</id>
		<title>Olkol: /* Вве­де­ние в MPI */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19469&amp;oldid=prev"/>
				<updated>2018-11-10T19:14:49Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Вве­де­ние в MPI&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Предыдущая&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Версия 19:14, 10 ноября 2018&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 5:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 5:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Файл:Lxf168Exper.png |left |100px |thumb|'''Наш эксперт''' Ми­ха­ил Ос­тап­ке­вич романтик, очарованный компьютерами и создаваемыми в них идеальными мирами; верит, что сложнейшие новые технологии могут и должны служить во благо человечеству.]] &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Файл:Lxf168Exper.png |left |100px |thumb|'''Наш эксперт''' Ми­ха­ил Ос­тап­ке­вич романтик, очарованный компьютерами и создаваемыми в них идеальными мирами; верит, что сложнейшие новые технологии могут и должны служить во благо человечеству.]] &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Вре­ме­на боль­ших век­тор­ных су­пер­ком­пь­ю­те­ров про­шли, ну или по­ка не на­ста­ли. Что мы име­ем вза­мен? Мно­же­ст­во неза­ви­си­мых «пи­си­шек», да­же ес­ли они и уста­нов­ле­ны в стой­ки и управ­ля­ют­ся ква­ли­фи­ци­ро­ван­ны­ми ад­минист­ра­то­ра­ми! За­пустить на них пач­ку за­дач лег­ко, но как под­от­чет­ные про­цес­сы бу­дут об­щать­ся? Да с по­мо­щью MPI!&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Вре­ме­на боль­ших век­тор­ных су­пер­ком­пь­ю­те­ров про­шли, ну или по­ка не на­ста­ли. Что мы име­ем вза­мен? Мно­же­ст­во неза­ви­си­мых «пи­си­шек», да­же ес­ли они и уста­нов­ле­ны в стой­ки и управ­ля­ют­ся ква­ли­фи­ци­ро­ван­ны­ми ад­минист­ра­то­ра­ми! За­пустить на них пач­ку за­дач лег­ко, но как под­от­чет­ные про­цес­сы бу­дут об­щать­ся? Да с по­мо­щью MPI!&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[[Файл:Lxf168Expert2.png |left |100px |thumb|'''Наш эксперт''' Ев­ге­ний Бал­дин Физик, который действительно знает, что такое нехватка вычислительных ресурсов.]] &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;MPI или Message Passing Interface или, по-про­сто­му, ин­тер­фейс пе­ре­да­чи со­об­щений – это стан­дарт­ный про­грамм­ный ин­тер­фейс для пе­ре­да­чи ин­фор­ма­ции ме­ж­ду про­цес­са­ми, вы­пол­няю­щи­ми од­ну за­да­чу. Стан­дарт под­дер­жи­ва­ет­ся кон­сор­циу­мом MPI Forum, чле­на­ми ко­то­ро­го яв­ля­ют­ся прак­ти­че­­ски все круп­ные про­из­во­ди­те­ли вы­чис­ли­тель­ной техники и про­грамм­но­го обес­пе­чения. Пер­вый стан­дарт MPI 1.0 при­нят в 1994 го­ду. Фор­маль­но раз­ра­бот­ка на­ча­лась в 1991 го­ду, когда неболь­шая груп­па уче­ных-ин­фор­ма­ти­ков со­бра­лась в уе­ди­нен­ном ав­ст­рий­ском гор­ном пан­сио­на­те и на­ча­ла ак­тив­но об­менивать­ся мнениями. В сен­тяб­ре 2012 го­да вы­шла спе­ци­фи­ка­ция MPI 3.0.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;MPI или Message Passing Interface или, по-про­сто­му, ин­тер­фейс пе­ре­да­чи со­об­щений – это стан­дарт­ный про­грамм­ный ин­тер­фейс для пе­ре­да­чи ин­фор­ма­ции ме­ж­ду про­цес­са­ми, вы­пол­няю­щи­ми од­ну за­да­чу. Стан­дарт под­дер­жи­ва­ет­ся кон­сор­циу­мом MPI Forum, чле­на­ми ко­то­ро­го яв­ля­ют­ся прак­ти­че­­ски все круп­ные про­из­во­ди­те­ли вы­чис­ли­тель­ной техники и про­грамм­но­го обес­пе­чения. Пер­вый стан­дарт MPI 1.0 при­нят в 1994 го­ду. Фор­маль­но раз­ра­бот­ка на­ча­лась в 1991 го­ду, когда неболь­шая груп­па уче­ных-ин­фор­ма­ти­ков со­бра­лась в уе­ди­нен­ном ав­ст­рий­ском гор­ном пан­сио­на­те и на­ча­ла ак­тив­но об­менивать­ся мнениями. В сен­тяб­ре 2012 го­да вы­шла спе­ци­фи­ка­ция MPI 3.0.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 38:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 38:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;mpi-doc, кро­ме html-спра­вочника, до­бав­ля­ет в сис­те­му man-странич­ки по мно­го­чис­лен­ным MPI-функ­ци­ям, очень удоб­ные для бы­ст­ро­го под­гля­ды­вания.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;mpi-doc, кро­ме html-спра­вочника, до­бав­ля­ет в сис­те­му man-странич­ки по мно­го­чис­лен­ным MPI-функ­ци­ям, очень удоб­ные для бы­ст­ро­го под­гля­ды­вания.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Здрав­ст­вуй, Мир!&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;===&lt;/ins&gt;Здрав­ст­вуй, Мир!&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Пред­по­ла­га­ет­ся, что вы пред­став­ляе­те, что та­кое про­грам­ми­ро­вание на C, ну или хо­тя бы на­пи­са­ли на этом язы­ке свой лич­ный HelloWorld. Вот так вы­гля­дит про­стей­шая MPI-про­грам­ма:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Пред­по­ла­га­ет­ся, что вы пред­став­ляе­те, что та­кое про­грам­ми­ро­вание на C, ну или хо­тя бы на­пи­са­ли на этом язы­ке свой лич­ный HelloWorld. Вот так вы­гля­дит про­стей­шая MPI-про­грам­ма:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 158:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 158:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Not enough processors were found on the local host to meet the requested binding action&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Not enough processors were found on the local host to meet the requested binding action&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Иг­ра «Жизнь»&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;===&lt;/ins&gt;Иг­ра «Жизнь»&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Кле­точ­ный ав­то­мат «Жизнь [Game of Life, или про­сто Life]» был пред­ло­жен анг­лий­ским ма­те­ма­ти­ком Джо­ном Кон­ве­ем [John Horton Conway] в 1979 го­ду. Вряд ли он стал бы так ши­ро­ко из­вес­тен, ес­ли бы не аме­ри­кан­ский ма­те­ма­тик и ис­клю­чи­тель­но энергичый по­пу­ля­ри­за­тор нау­ки Мар­тин Гарднер [Martin Gardner]. По иг­ре «Жизнь» есть мас­са по­пу­ляр­ной ли­те­ра­ту­ры, в том чис­ле и на русском язы­ке.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Кле­точ­ный ав­то­мат «Жизнь [Game of Life, или про­сто Life]» был пред­ло­жен анг­лий­ским ма­те­ма­ти­ком Джо­ном Кон­ве­ем [John Horton Conway] в 1979 го­ду. Вряд ли он стал бы так ши­ро­ко из­вес­тен, ес­ли бы не аме­ри­кан­ский ма­те­ма­тик и ис­клю­чи­тель­но энергичый по­пу­ля­ри­за­тор нау­ки Мар­тин Гарднер [Martin Gardner]. По иг­ре «Жизнь» есть мас­са по­пу­ляр­ной ли­те­ра­ту­ры, в том чис­ле и на русском язы­ке.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 240:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 240:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Функ­ция ComputeCell не ме­ня­ет­ся, так что ниже мы ее не дуб­ли­ру­ем:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Функ­ция ComputeCell не ме­ня­ет­ся, так что ниже мы ее не дуб­ли­ру­ем:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;#define QTY_STEPS 8192&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;#define QTY_STEPS 8192&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;#define SIZE_ARRAY 1024&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;#define SIZE_ARRAY 1024&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;#define SIZE_HALFARRAY (SIZE_ARRAY/2+1)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;#define SIZE_HALFARRAY (SIZE_ARRAY/2+1)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;char ar[2][SIZE_HALFARRAY][SIZE_ARRAY];&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;char ar[2][SIZE_HALFARRAY][SIZE_ARRAY];&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;#define RES_OK 0&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;#define RES_OK 0&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;#define RES_ERROR 1&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;#define RES_ERROR 1&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;int mytag=99;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;int mytag=99;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Olkol</name></author>	</entry>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19467&amp;oldid=prev</id>
		<title>Olkol: Новая страница: «Категория: Учебники '''Па­рал­лель­ные тех­но­ло­гии. Введение в актуальную тему''' == В…»</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;diff=19467&amp;oldid=prev"/>
				<updated>2018-11-10T19:07:50Z</updated>
		
		<summary type="html">&lt;p&gt;Новая страница: «&lt;a href=&quot;/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:%D0%A3%D1%87%D0%B5%D0%B1%D0%BD%D0%B8%D0%BA%D0%B8&quot; title=&quot;Категория:Учебники&quot;&gt;Категория: Учебники&lt;/a&gt; &amp;#039;&amp;#039;&amp;#039;Па­рал­лель­ные тех­но­ло­гии. Введение в актуальную тему&amp;#039;&amp;#039;&amp;#039; == В…»&lt;/p&gt;
&lt;a href=&quot;http://wiki.linuxformat.ru/wiki/index.php?title=LXF168:%D0%92%D1%8B%C2%AD%D1%87%D0%B8%D1%81%C2%AD%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F._MPI-%D0%BF%D1%80%D0%BE%C2%AD%D0%B3%D1%80%D0%B0%D0%BC%C2%AD%D0%BC%D1%8B_%D0%B8_%D0%96%D0%B8%D0%B7%D0%BD%D1%8C&amp;amp;diff=19467&quot;&gt;Внесённые изменения&lt;/a&gt;</summary>
		<author><name>Olkol</name></author>	</entry>

	</feed>