dc.contributor.author | Карасик, О. Н. | |
dc.contributor.author | Прихожий, А. А. | |
dc.coverage.spatial | Брест | ru_RU |
dc.date.accessioned | 2020-04-16T15:00:35Z | |
dc.date.available | 2020-04-16T15:00:35Z | |
dc.date.issued | 2019 | |
dc.identifier.citation | Карасик, О. Н. Кооперативный многопоточный
планировщик для эффективного решения прикладных задач на
многоядерных системах / О. Н. Карасик, А. А. Прихожий // Вестник Брестского государственного технического университета. Серия: Физика, математика, информатика. – 2019. – № 5. – С. 67–72 : ил. – Библиогр.: с. 71–72 (17 назв.). | ru_RU |
dc.identifier.uri | https://rep.bstu.by/handle/data/4935 | |
dc.description | KARASIK A. N., PRIHOZHY A. A. Cooperative multi-thread scheduler for efficient solving applied tasks on multi-core systems | ru_RU |
dc.description.abstract | Предлагается архитектура кооперативного многопоточного планировщика выполнения потоков на многоядерных системах под управлением ОС Windows. Архитектура реализована с помощью механизма
User Mode Scheduling, позволяющего пользовательскому приложению
организовывать кооперативное выполнение потоков. Исследуемая
архитектура включает в себя потоки пользователя, исполняющие
пользовательский код; потоки планировщика, управляющие выполнением потоков пользователя; примитив синхронизации для организации
взаимодействия потоков пользователя, выполняющихся на разных
ядрах многоядерной системы; механизм передачи управления между
потоками пользователя, выполняющимися на одном ядре.
Распределенный по ядрам планировщик позволяет потокам самим логически планировать порядок передачи управления и повышать производительность многоядерной системы при исполнении
блочно-параллельных алгоритмов решения практически важных
задач. Многопоточные алгоритмы, построенные известными способами, не обладают нужными планировщику свойствами. В связи с
этим предложен новый способ построения кооперативных потоковых
блочно-параллельных алгоритмов.
Производительность планировщика оценена экспериментально на
кооперативных блочно-параллельных алгоритмах решения систем
линейных алгебраических уравнений методом Гаусса и на кооперативных блочно-параллельных алгоритмах нахождения кратчайших
путей на графе методом Флойда-Уоршелла. Алгоритмы балансируют
распределение блоков данных по потокам и потоков по ядрам; устанавливают порядок выполнения потоков на каждом ядре; минимизируют слоты времени на управление, ожидание и простаивание потоков; повышают полезную загрузку ядер близко к 100%; позволяют
находить оптимальный размер блока; сокращают обмен данными
между кэшем ядер и между уровнями иерархической памяти. | ru_RU |
dc.language.iso | ru | ru_RU |
dc.publisher | БрГТУ | ru_RU |
dc.subject | прикладная информатика | ru_RU |
dc.subject | системный анализ | ru_RU |
dc.subject | многоядерная система | ru_RU |
dc.subject | алгоритм | ru_RU |
dc.subject | applied informatics | ru_RU |
dc.subject | system analysis | ru_RU |
dc.subject | multi core system | ru_RU |
dc.subject | algorithm | ru_RU |
dc.title | Кооперативный многопоточный планировщик для эффективного решения прикладных задач на многоядерных системах | ru_RU |
dc.type | Статья (Article) | ru_RU |
dc.identifier.udc | 004.272.2(075.8) | ru_RU |
dc.abstract.alternative | An architecture of the cooperative multi-thread scheduler for thread execution on a multi-core system that runs OS Windows is proposed. The architecture
is implemented using the User Mode Scheduling mechanism, which allows the user application to organize cooperative thread execution. The
architecture under development a user thread for executing user code, a new synchronization primitive for organizing the interaction of user threads on
different cores, a control transfer mechanism between user threads on the same core. The architecture allows a programmer to implement cooperative
multi-threaded algorithms to accelerate the solution of large-scale problems on multi-core systems. | ru_RU |