ПРЕОБРАЗОВАНИЕ СОРТИРУЮЩИХ СЕТЕЙ ДЛЯ РАЗНОЙ СТЕПЕНИ ПАРАЛЛЕЛИЗМА

  • И.И. Левин Южный федеральный университет
  • К.Н. Алексеев Южный федеральный университет
Ключевые слова: Алгоритмы сортировки, сортирующие сети, информационный граф, ярусно- параллельная форма, преобразование алгоритмов

Аннотация

Одни известные алгоритмы сортировки могут быть эффективнее других по какому-
либо из основных критериев: число выполняемых операций, время выполнения элементар-
ных операций, объем используемой памяти, степень параллелизма, функциональная регу-
лярность связей в информационном графе алгоритма и т.д. При этом, имеется возмож-
ность выбрать такой алгоритм сортировки, который после выполнения операции редук-
ции производительности вычислительной структуры, будет занимать минимум аппарат-
ного ресурса. Выбор конкретного алгоритма напрямую зависит степени его распараллели-
вания, заданного временем обработки данных, коэффициента редукции и латентности
вычислительной структуры, количества и разрядности сортируемых элементов. Алго-
ритмы сортировки являются информационно-эквивалентными, так как они выполняют
одну и ту же математическую функцию. Однако каждый из алгоритмов рассматривает-
ся как автономный и независимый подход к решению задачи упорядочивания данных. Из-
вестно, что алгоритмам сортировки «пузырьком», «вставками» и «выбором» соответст-
вует одна и та же сортирующая сеть, однако переход от одного алгоритма к другому до
сих пор не описан в виде математических преобразований. Можно утверждать, что в
настоящее время математический аппарат для описания различных алгоритмов сорти-
ровки и сортирующих сетей не формализован в полной мере, из-за чего не существует ме-
тодологических основ перехода от одного алгоритма к другому. Иным способом описания
алгоритма решения задачи является его представление в виде информационного графа, где
выполняемые операции являются вершинами, которые объединены дугами, отражающими
информационную зависимость между операциями. Преобразование информационного гра-
фа может приводить к получению иных информационно-эквивалентных алгоритмов. Преимуществом подобного подхода к описанию алгоритмов является сравнительная просто-
та используемого понятийного аппарата. В данной работе рассмотрены правила преобра-
зования сортирующих сетей, на основе которых выполнен переход от одной сети к другой.
Каждая из полученных сортирующих сетей может быть эффективна при разных коэф-
фициентах распараллеливания и разном темпе обработки данных, от которых напрямую
зависит коэффициент редукции производительности реализуемой вычислительной струк-
туры. Автоматизация предложенных методов преобразования может позволить исполь-
зовать разные алгоритмы сортировки, полученные из единого описания задачи в виде ин-
формационного графа, и зависящие от заданной скорости обработки данных.

Литература

1. Knut D.E. Iskusstvo programmirovaniya. T. 3. Sortirovka i poisk [The art of programming.
Volume 3. Sorting and searching]. 2nd ed.: transl. from engl. Moscow: Izdatel'skiy dom
«Vil'yams», 2001.
2. Dasgupta S., Papadimitriu Kh., Vazirani U. Algoritmy [Algorithms]: trans. from engl., ed. by
A. Shenya. Moscow: MTSNMO, 2014, 320 p.
3. Kormen Tomas Kh. i dr. Algoritmy: postroenie i analiz [Algorithms: construction and analysis].
3rd ed.: transl. from engl. Moscow: OOO «I.D. Vil'yams», 2013, 1328 p.
4. Skiena S.S. Algoritmy. Rukovodstvo po razrabotke [Algorithms. Development Guide]. 3rd ed.:
transl. from engl. Saint Petersburg: BKhV-Peterburg, 2022, 848 p.
5. Alekseev K.N. Metody i sredstva sozdaniya parallel'no-konveyernykh programm dlya
resheniya zadach real'nogo vremeni na rekonfiguriruemykh vychislitel'nykh sistemakh: diss.
… kand. tekhn. nauk, po spetsial'nosti 05.13.11 “Matematicheskoe i programmnoe
obespechenie vychislitel'nykh mashin, kompleksov i komp'yuternykh setey”, nauchnyy
rukovoditel': d.t.n., prof. Levin I.I. [Methods and means for creating parallel-pipeline programs
for solving real-time problems on reconfigurable computing systems: cand. of eng. sc. diss.,
specialty 05.13.11 “Mathematical and software support for computers, complexes and computer
networks”, scientific supervisor: dr. of eng. sc,, professor Levin I.I.]. Taganrog, 2020,
213 p.
6. Skvortsov S.V., Pyurova T.A. Parallel'nye algoritmy sortirovki dannykh i ikh realizatsiya na
platforme CUDA [Parallel data sorting algorithms and their implementation on the CUDA
platform], Vestnik RGRTU [Vestnik of Ryazan State Radio Engineering University], 2016,
No. 58, pp. 42-48.
7. Sortirovochnye seti s osobymi svoystvami [Sorting networks with special properties]. Available at:
https://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1
%80%D0%BE%D0%B2%D0%BE%D1%87%D0%BD%D1%8B%D0%B5_%D1%81%D0%B5
%D1%82%D0%B8_%D1%81_%D0%BE%D1%81%D0%BE%D0%B1%D1%8B%D0%BC%D
0%B8_%D1%81%D0%B2%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B0%D0%B
C%D0%B8 (accessed 01 November 2023).
8. Sortiruyushchie seti dlya kvadratichnykh sortirovok [Sorting networks for quadratic sorts]. Available
at: https://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BE%D1%80%D1%82%D0%
B8%D1%80%D1%83%D1%8E%D1%89%D0%B8%D0%B5_%D1%81%D0%B5%D1%82%D0
%B8_%D0%B4%D0%BB%D1%8F_%D0%BA%D0%B2%D0%B0%D0%B4%D1%80%D0%B
0%D1%82%D0%B8%D1%87%D0%BD%D1%8B%D1%85_%D1%81%D0%BE%D1%80%D1
%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BE%D0%BA (accessed 01 November 2023).
9. Alekseev K.N., Levin I.I., Sorokin D.A. Strukturno-protsedurnaya realizatsiya na rekonfiguriruemykh
vychislitel'nykh sistemakh kodirovaniya KHaffmana v real'nom masshtabe
vremeni [Structural and procedural implementation on reconfigurable computing systems of
Huffman coding in real time], Vestnik komp'yuternykh i informatsionnykh tekhnologiy [Bulletin
of computer and information technologies], 2018, No. 9, pp. 3-10. ISSN 1810-7206. DOI:
10.14489/vkit.2018.09.pp.003-010. Available at: http://www.vkit.ru/index.php//current-issuerus/
751-003-010.
10. Alekseev K.N., Sorokin D.A., Semernikova E.E. Strukturno-protsedurnaya realizatsiya
kodirovaniya algoritmom Khaffmana v zadachakh upravleniya [Structural and procedural implementation
of coding by the Huffman algorithm in control problems], Mater. 10-y
Vserossiyskoy mul'tikonferentsii po problemam upravleniya (MKPU-2017), 11-16 sentyabrya
2017 g. [Proceedings of the 10th All-Russian Multi-Conference on Control Problems (MCPU-
2017), September 11-16, 2017]. Rostov-on-Don: Izd-vo YuFU, 2017, Vol. 3, pp. 126-127.
11. Dudnikov E.A., Alekseev K.N., Sorokin D.A. High-Speed Huffman encoding of dense data
flows on FPGA, German International Journal of Modern Science / Deutsche internationale
Zeitschrift für zeitgenössische Wissenschaft, 2021, No. 9, Vol. 1, pp. 36-40. Available at:
https://dizzw.com/wp-content/uploads/2021/05/Deutsche-internationale-Zeitschrift-fürzeitgenössische-
Wissenschaft-№9-part-1-2021-37-41.pdf.
12. Kalyaev A.V., Levin I.I. Modul'no-narashchivaemye mnogoprotsessornye sistemy so strukturnoprotsedurnoy
organizatsiey vychisleniy [Modularly scalable multiprocessor systems with structural
and procedural organization of calculations]. Moscow: Yanus-K, 2003, 380 p.
13. Kalyaev I.A., Levin I.I., Semernikov E.A., Shmoylov V.I. Rekonfiguriruemye mul'tikonveyernye
vychislitel'nye struktury [Reconfigurable multi-pipeline computing structures]. 2nd ed., under
general ed. I.A. Kalyaeva. Rostov-on-Don: Izd-vo YuNTS RAN, 2009, 344 s. ISBN 978-5-
902982-61-6.
14. Pisarenko I.V., Alekseev K.N., Mel'nikov A.K. Resursonezavisimoe predstavlenie
sortiruyushchikh setey na yazyke programmirovaniya Set@l [Resource-independent representation
of sorting networks in the Set@l programming language], Vestnik komp'yuternykh i
informatsionnykh tekhnologiy [Bulletin of computer and information technologies], 2019,
No. 11 (185), pp. 53-60. DOI: 10.14489/vkit.2019.11.pp.053-060. Available at:
http://vkit.ru/index. php/ current-issue-rus/857-053-060.
15. Pisarenko I.V., Kasarkin A.V., Alekseev K.N. Rekursivnoe opisanie grafov s assotsiativnymi
operatsiyami na yazyke programmirovaniya Set@l [Recursive description of graphs with associative
operations in the Set@l programming language], Vserossiyskaya nauchnaya
konferentsiya "Cuperkomp'yuternye tekhnologii (SKT) 2020", 05-10 oktyabrya 2020 g.: Krym,
Alushta, Rossiya [All-Russian scientific conference "Supercomputer Technologies (SCT)
2020", October 05-10, 2020: Crimea, Alushta, Russia]. Rostov-on-Don; Taganrog: Izd-vo
YuFU, 2020, pp. 79-83.
16. Mikhaylov D.V. Metody sozdaniya parallel'no-konveyernykh programm dlya zadach s
posledovatel'nym informatsionnym grafom: diss. … kand. tekhn. nauk, po spetsial'nosti
05.13.11 “Matematicheskoe i programmnoe obespechenie vychislitel'nykh mashin,
kompleksov i komp'yuternykh setey”, nauchnyy rukovoditel': d.t.n., prof. Levin I.I. [Methods
for creating parallel-pipeline programs for problems with a sequential information graph: cand.
of eng. sc. diss., specialty 05.13.11 “Mathematical and software support for computers, complexes
and computer networks”, scientific supervisor: dr. of eng. sc., professor Levin I.I.]. Taganrog,
2022, 213 p.
17. Mikhaylov D.V., Levin I.I., Dordopulo A.I., Pisarenko I.V. Predstavlenie grafov s
assotsiativnymi operatsiyami na yazyke programmirovaniya SET@L [Representation of
graphs with associative operations in the SET@L programming language], Izvestiya YuFU.
Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2020, No. 3 (213), pp. 98-109.
DOI: 10.18522/2311-3103-2020-3-98-111.
18. Mikhaylov D.V. Preobrazovanie nekotorykh vidov posledovatel'nykh informatsionnykh grafov v
parallel'no-konveyernuyu formu [Transformation of some types of sequential information graphs
into a parallel-pipeline form], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering
Sciences], 2020, No. 7 (217), pp. 78-93. DOI: 10.18522/2311-3103-2020-7-78-93.
19. Mikhaylov D.V. Preobrazovanie posledovatel'nogo informatsionnogo grafa metoda progonki v
parallel'nuyu formu [Transformation of a sequential information graph of the sweep method
into parallel form], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences],
2021, No. 7 (224), pp. 177-188. DOI: 10.18522/2311-3103-2021-7-177-188.
20. Sorokin D.A., Dordopulo A.I. Metodika sokrashcheniya apparatnykh zatrat v slozhnykh
sistemakh pri reshenii zadach s sushchestvenno-peremennoy intensivnost'yu potokov dannykh
[Methodology for reducing hardware costs in complex systems when solving problems with
significantly variable intensity of data flows], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya
SFedU. Engineering Sciences], 2012, No. 4, pp. 213-219.
21. Batcher K.E. Sorting Networks and their Applications, Proc. AFIPS Spring Joint Comput.
Conf., 1968, Vol. 32, pp. 307314.
Опубликован
2023-12-11
Выпуск
Раздел
РАЗДЕЛ I. АЛГОРИТМЫ ОБРАБОТКИ ИНФОРМАЦИИ