Еквівалентність двох систем паралельного виконання

dc.contributor.authorПанченко, Т.В.
dc.contributor.authorFabunmi Sunmade
dc.date.accessioned2018-12-30T16:56:46Z
dc.date.available2018-12-30T16:56:46Z
dc.date.issued2018
dc.description.abstractДосліджується метод доведення властивостей паралельних програм, що виконуються багатоекземплярно в режимі почергового покрокового переключення і взаємодіють через спільну пам’ять. У роботі розглянуто дві системи паралельного виконання програм та наведено обґрунтування взаємної виразності двох цих підходів. Один – з фіксованою, але параметричною, кількістю паралельно виконуваних програм. Другий – реалізує модель породження (start) і приєднання після зупинки (join) паралельних програм (також називається multithreading). Введено відповідні дві базові функції та задано їх семантику. Також наведено семантику інших функцій стосовно паралельного виконання, управління ресурсами та синхронізації доступу. Наведено теорему щодо (функціональної) еквівалентності двох систем та її обґрунтування. Програма в даному випадку розглядається як функція над даними. Стверджується, що для довільної програми в одній з систем паралелізму можна побудувати відповідну їй програму в іншій системі, яка повертає той самий результат (тобто є функціонально еквівалентною). Тільки продуктивні програми розглядаються тут у контексті взаємної виразності, оскільки у протилежному випадку вони "зависають" і не повертають жодного результату, отже є за межами нашого розгляду. Отриманий результат дозволяє звести роботу у більш складній (за будовою) системі з динамічним породженням екземплярів до більш простої (для доведень) системи з параметричною кількістю однакових програм, виконуваних у паралель. Визначено також питання для подальших досліджень у цьому напрямку.uk_UA
dc.description.abstractИсследуется метод доказательства свойств параллельных программ, которые выполняются многоэкземплярно в режиме поочередного пошагового переключения и взаимодействуют через общую память. В работе рассмотрены две системы параллельного выполнения программ и приведено обоснование взаимной выразимости этих двух подходов. Один – с фиксированным, но параметрическим, количеством параллельно выполняемых программ. Второй – реализует модель порождения (start) и присоединения после остановки (join) параллельных программ (также называется multithreading). Введено соответствующие две базовые функции и задано их семантику. Также задана семантика других функций касательно параллельного выполнения, управления ресурсами и синхронизации доступа. Приведены теорема об (функциональной) эквивалентности двух систем и ее обоснование. Программа в данном случае рассматривается как функция над данными. Утверждается, что для произвольной программы в одной из систем параллелизма можно построить соответствующую ей программу в другой системе, которая возвращает тот же результат (то есть функционально эквивалентна). Только продуктивные программы рассматриваются здесь в контексте взаимной выразимости, поскольку в противном случае они "зависают" и не возвращают никакого результата, поэтому лежат вне области нашего рассмотрения. Полученный результат позволяет свести работу в более сложной (по строению) системе с динамическим порождением экземпляров к более простой (для доказательств) системе с параметрическим количеством одинаковых программ, выполняемых параллельно. Также указаны вопросы для дальнейших исследований в этом направлении.uk_UA
dc.description.abstractThe method for properties proof for parallel programs running multiple-instance interleaving with shared memory is investigated. Two systems for parallel execution of programs are considered and the justification of the mutual expressiveness of these two approaches are presented in this paper. The first one is with a fixed yet parametric number of programs executing in parallel. The second one implements a generation model (start) and joining after the stop (join) of parallel programs (also called multithreading). The corresponding two basic functions are provided, and their semantics are given. Also, the semantics of other functions related to parallel execution, resource management and access synchronization are presented in this paper. The theorem on the (functional) equivalence of these two systems and its justification are presented. The program in this case is considered as a function over the data. It is argued that for an arbitrary program in one of the systems of parallelism it is possible to construct the corresponding program in another system, which returns the same result (that is, functionally equivalent). Only productive programs are considered here in the context of mutual expressiveness, because otherwise they "hang" and do not return any result, thus they are out of our scope. The obtained result allows us to move reasoning from the more complex system (by structure) with a dynamic generation of parallel program instances to the simpler system (for proofs) with a parametric number of identical programs executed in parallel. Questions for further research in this direction are also identified.uk_UA
dc.identifier.citationЕквівалентність двох систем паралельного виконання / Т.В. Панченко, Fabunmi Sunmade // Проблеми програмування. — 2018. — № 2-3. — С. 93-98. — Бібліогр.: 7 назв. — укр.uk_UA
dc.identifier.issn1727-4907
dc.identifier.udc004.415, 681.3
dc.identifier.urihttps://nasplib.isofts.kiev.ua/handle/123456789/144587
dc.language.isoukuk_UA
dc.publisherІнститут програмних систем НАН Україниuk_UA
dc.relation.ispartofПроблеми програмування
dc.statuspublished earlieruk_UA
dc.subjectПаралельне програмування. Розподілені системи і мережіuk_UA
dc.titleЕквівалентність двох систем паралельного виконанняuk_UA
dc.title.alternativeEquivalence of two parallel execution systemsuk_UA
dc.typeArticleuk_UA

Файли

Оригінальний контейнер

Зараз показуємо 1 - 1 з 1
Завантаження...
Ескіз
Назва:
10-Panchenko.pdf
Розмір:
469.79 KB
Формат:
Adobe Portable Document Format

Контейнер ліцензії

Зараз показуємо 1 - 1 з 1
Завантаження...
Ескіз
Назва:
license.txt
Розмір:
817 B
Формат:
Item-specific license agreed upon to submission
Опис: