<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">mais</journal-id><journal-title-group><journal-title xml:lang="ru">Моделирование и анализ информационных систем</journal-title><trans-title-group xml:lang="en"><trans-title>Modeling and Analysis of Information Systems</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">1818-1015</issn><issn pub-type="epub">2313-5417</issn><publisher><publisher-name>Yaroslavl State University</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.18255/1818-1015-2014-2-15-25</article-id><article-id custom-type="elpub" pub-id-type="custom">mais-116</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>Оригинальные статьи</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>Articles</subject></subj-group></article-categories><title-group><article-title>О поддержке рекурсивно-параллельного программирования в .NET Framework</article-title><trans-title-group xml:lang="en"><trans-title>On the Recursive-Parallel Programming for the .NET Framework</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Васильчиков</surname><given-names>Владимир Васильевич</given-names></name><name name-style="western" xml:lang="en"><surname>Vasilchikov</surname><given-names>V. V.</given-names></name></name-alternatives><bio xml:lang="ru"><p>канд. техн. наук, зав. кафедрой вычислительных и программных систем,</p><p>150000 Россия, г. Ярославль, ул. Советская, 14</p></bio><bio xml:lang="en"><p>канд. техн. наук, зав. кафедрой вычислительных и программных систем,</p><p>Sovetskaya str., 14, Yaroslavl, 150000, Russia</p></bio><email xlink:type="simple">vasilch@uniyar.ac.ru</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Ярославский государственный университет им. П.Г. Демидова</institution><country>Россия</country></aff><aff xml:lang="en"><institution>P.G. Demidov Yaroslavl State University</institution><country>Russian Federation</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2014</year></pub-date><pub-date pub-type="epub"><day>20</day><month>04</month><year>2014</year></pub-date><volume>21</volume><issue>2</issue><fpage>15</fpage><lpage>25</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Васильчиков В.В., 2014</copyright-statement><copyright-year>2014</copyright-year><copyright-holder xml:lang="ru">Васильчиков В.В.</copyright-holder><copyright-holder xml:lang="en">Vasilchikov V.V.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://www.mais-journal.ru/jour/article/view/116">https://www.mais-journal.ru/jour/article/view/116</self-uri><abstract><p>Рассматриваются программные компоненты для поддержки рекурсивно-параллельного программирования в .NET Framework. Они представляют собой динамически подключаемые библиотеки, предоставляющие необходимую функциональность для разработки и отладки приложений, предназначенных для параллельного выполнения на локальной сети. Библиотечные классы коммуникационного модуля обеспечивают удобные средства для установления соединения компьютеров в сети по принципу ”каждый с каждым” и надежную асинхронную передачу сериализуемых объектов. Классы модуля поддержки рекурсивно-параллельного программирования обеспечивают возможность оформления параллельных ветвей вычислений как мигрирующих процессов, их распределение по сети, передачу параметров и возврат результатов с необходимой синхронизацией, динамическое перераспределение работы для балансировки загрузки, а также работу с общими данными. Приводятся несколько вариантов рекурсивного распараллеливания решения задачи о поиске максимальной клики в неориентированном графе и результаты тестирования рассматриваемых компонентов на примере этой задачи.</p></abstract><trans-abstract xml:lang="en"><p>The paper describes software components to support recursive-parallel programming for the .NET Framework. They are dynamic link libraries providing the necessary functionality for developing and debugging applications for parallel execution on a local network. Communication module library classes provide user-friendly software tools to establish ”each with each” network connection and reliable asynchronous transmission for serializable objects. Classes of the recursive-parallel programming library provide representation of parallel computation branches as migratory processes, their initial distribution over the network, the transmission parameters and return results with the necessary synchronization, dynamic reallocation of work for load balancing and also sharing data processing. By this example it also describes some variants of the recursive-parallel algorithm to solve the problem of finding a maximum clique in a non-oriented graph and the results of testing the considered components.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>параллельные вычисления</kwd><kwd>рекурсия</kwd><kwd>.NET</kwd></kwd-group><kwd-group xml:lang="en"><kwd>parallel computing</kwd><kwd>recursion</kwd><kwd>.NET</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Васильчиков В.В. Средства параллельного программирования для вычислительных систем с динамической балансировкой загрузки. Ярославль: ЯрГУ, 2001. [Vasilchikov V.V. Sredstva parallelnogo programmirovaniya dlya vychislitelnykh sistem s dinamicheskoy balansirovkoy zagruzki. Yaroslavl: YarGU, 2001 (in Russian)].</mixed-citation><mixed-citation xml:lang="en">Васильчиков В.В. Средства параллельного программирования для вычислительных систем с динамической балансировкой загрузки. Ярославль: ЯрГУ, 2001. [Vasilchikov V.V. Sredstva parallelnogo programmirovaniya dlya vychislitelnykh sistem s dinamicheskoy balansirovkoy zagruzki. Yaroslavl: YarGU, 2001 (in Russian)].</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Васильчиков В.В., Шубин А.В. Библиотека параллельного исполнения rpC-программ для Win32 // Моделирование и анализ информационных систем. 2008. Т. 15, №1. С. 37–40. [Vasilchikov V.V., Shubin A.V. The library for parallel execution of rpC-programs under Win32 // Modeling and Analysis of Information Systems. 2008. V. 15, No 1. P. 37–40 (in Russian)].</mixed-citation><mixed-citation xml:lang="en">Васильчиков В.В., Шубин А.В. Библиотека параллельного исполнения rpC-программ для Win32 // Моделирование и анализ информационных систем. 2008. Т. 15, №1. С. 37–40. [Vasilchikov V.V., Shubin A.V. The library for parallel execution of rpC-programs under Win32 // Modeling and Analysis of Information Systems. 2008. V. 15, No 1. P. 37–40 (in Russian)].</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Бойцов Е.А., Васильчиков В.В. Кроссплатформенная библиотека параллельного выполнения rpC-программ // Современные проблемы математики и информатики: Сборник научных трудов молодых ученых, аспирантов и студентов / Яросл. гос. ун-т им. П.Г. Демидова. Ярославль, 2011. Вып. 12. С. 71–81. [Boytsov E.A., Vasilchikov V.V. Krossplatformennaya biblioteka parallelnogo vypolneniya rpC-programm // Sovremennye problemy matematiki i informatiki: Sbornik nauchnykh trudov molodykh uchenykh, aspirantov i studentov / Yarosl. gos. un-t im. P.G. Demidova. Yaroslavl, 2011. Vyp. 12. S. 71–81 (in Russian)].</mixed-citation><mixed-citation xml:lang="en">Бойцов Е.А., Васильчиков В.В. Кроссплатформенная библиотека параллельного выполнения rpC-программ // Современные проблемы математики и информатики: Сборник научных трудов молодых ученых, аспирантов и студентов / Яросл. гос. ун-т им. П.Г. Демидова. Ярославль, 2011. Вып. 12. С. 71–81. [Boytsov E.A., Vasilchikov V.V. Krossplatformennaya biblioteka parallelnogo vypolneniya rpC-programm // Sovremennye problemy matematiki i informatiki: Sbornik nauchnykh trudov molodykh uchenykh, aspirantov i studentov / Yarosl. gos. un-t im. P.G. Demidova. Yaroslavl, 2011. Vyp. 12. S. 71–81 (in Russian)].</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Васильчиков В.В. Коммуникационный модуль для организации полносвязного соединения компьютеров в локальной сети с использованием .NET Framework. Свидетельство о государственной регистрации программы для ЭВМ № 2013619925, 2013. [Vasilchikov V.V. Kommunikatsionnyy modul dlya organizatsii polnosvyaznogo soedineniya kompyuterov v lokalnoy seti s ispolzovaniem .NET Framework. Svidetelstvo o gosudarstvennoy registratsii programmy dlya EVM № 2013619925, 2013 (in Russian)].</mixed-citation><mixed-citation xml:lang="en">Васильчиков В.В. Коммуникационный модуль для организации полносвязного соединения компьютеров в локальной сети с использованием .NET Framework. Свидетельство о государственной регистрации программы для ЭВМ № 2013619925, 2013. [Vasilchikov V.V. Kommunikatsionnyy modul dlya organizatsii polnosvyaznogo soedineniya kompyuterov v lokalnoy seti s ispolzovaniem .NET Framework. Svidetelstvo o gosudarstvennoy registratsii programmy dlya EVM № 2013619925, 2013 (in Russian)].</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Васильчиков В.В. Библиотека поддержки рекурсивно-параллельного программирования для .NET Framework. Свидетельство о государственной регистрации программы для ЭВМ № 2013619926, 2013. [Vasilchikov V.V. Biblioteka podderzhki rekursivnoparallelnogo programmirovaniya dlya .NET Framework. Svidetelstvo o gosudarstvennoy registratsii programmy dlya EVM № 2013619926, 2013 (in Russian)].</mixed-citation><mixed-citation xml:lang="en">Васильчиков В.В. Библиотека поддержки рекурсивно-параллельного программирования для .NET Framework. Свидетельство о государственной регистрации программы для ЭВМ № 2013619926, 2013. [Vasilchikov V.V. Biblioteka podderzhki rekursivnoparallelnogo programmirovaniya dlya .NET Framework. Svidetelstvo o gosudarstvennoy registratsii programmy dlya EVM № 2013619926, 2013 (in Russian)].</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Bron C., Kerbosh J. Algorithm 457 – Finding all cliques of an undirected graph // Comm. of ACM. 1973. 16. P. 575—577.</mixed-citation><mixed-citation xml:lang="en">Bron C., Kerbosh J. Algorithm 457 – Finding all cliques of an undirected graph // Comm. of ACM. 1973. 16. P. 575—577.</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Бойцов Е.А., Васильчиков В.В. Решение задачи о клике на языке rpC с помощью библиотеки RPM // Заметки по информатике и математике: Сборник статей / Яросл. гос. ун-т им. П.Г. Демидова. Ярославль, 2011. С. 28–37. [Boytsov E.A., Vasilchikov V.V. Reshenie zadachi o klike na yazyke rpC s pomoshch’yu biblioteki RPM // Zametki po informatike i matematike. Sbornik statey / Yarosl. gos. un-t im. P.G. Demidova. Yaroslavl, 2011. S. 28–37 (in Russian)].</mixed-citation><mixed-citation xml:lang="en">Бойцов Е.А., Васильчиков В.В. Решение задачи о клике на языке rpC с помощью библиотеки RPM // Заметки по информатике и математике: Сборник статей / Яросл. гос. ун-т им. П.Г. Демидова. Ярославль, 2011. С. 28–37. [Boytsov E.A., Vasilchikov V.V. Reshenie zadachi o klike na yazyke rpC s pomoshch’yu biblioteki RPM // Zametki po informatike i matematike. Sbornik statey / Yarosl. gos. un-t im. P.G. Demidova. Yaroslavl, 2011. S. 28–37 (in Russian)].</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
