Mamedov T. Methods of automatic program design for classes of high-performance computing architectures

Українська версія

Thesis for the degree of Doctor of Philosophy (PhD)

State registration number

0824U002754

Applicant for

Specialization

  • 122 - Комп’ютерні науки

Specialized Academic Board

ДФ 26.314.001

Institute of Software Systems of National Academy of Sciences of Ukraine

Essay

Dissertation report: 164 pages, 4 chapters, 2 tables, 13 figures, 5 appendices, 135 sources. Keywords: optimal strategy, modeling, system, automatic program design, auto-tuning, convolutional neural network, program modeling, formal model, simulation, automation, artificial intelligence, neural networks, high efficiency, algebraic-algorithmic models, programmable logic integrated circuits. The object of research is the processes of automating self-configuration and designing .NET programs and neural networks on FPGAs for the implementation of high-performance computing classes of architectures. The subject of research is a system for automating the configuration and generation of programs for various platforms and PCs. The purpose of the work is the development of tools for increasing the efficiency of programs for classes of high-performance computing architectures. The dissertation has the following scientific novelty: • For the first time, a method of automated design and generation of programs based on algebraic-algorithmic models was developed, which simplifies and speeds up the development and application of neural networks for classes of programmable logic integrated circuits (PLIC) and TensorFlow architectures. • For the first time, a method of generating neural networks for learning with reinforcement in VHDL language for FPGA devices and working with neuroevolution frameworks of incremental topology was developed based on developed algebraic-algorithmic models, which makes it possible to automate this process with the help of an integrated program design and synthesis toolkit (IPS). The method of automating the translation of neural networks for the TensorFlow platform and its subsequent projection on the FPGA was further developed due to the development of the relevant formal specifications. • The theoretical model of the TermWare rewriting rule system was further developed by introducing rules for the term language, which allows generating a correct and high-performance program based on static analysis of resource leakage and speed optimization for programs on the .NET platform. Theoretical and practical results of the dissertation. Existing self-tuning methods for .NET applications have been found to mostly rely on compiler optimizations or to be inflexible and only applicable in select cases. However, using rewriting rules for self-configuring programs allows you to create high-performance code. Studies have shown that this approach outperforms Eazfuscator.NET by 14.63% in the Game of Life cellular automaton problem. An important achievement was the introduction of static analysis to detect resource leaks using rewrite rules on the .NET platform. This made it possible to clearly define specifications for checking open-closed file problems and other types of resource leaks. A method of automated design and generation of programs based on algebraic-algorithmic models is also proposed. It greatly simplifies and speeds up the development of neural networks for programmable logic integrated circuits. In addition, the Integrated Program Design and Synthesis (IPS) toolkit, which uses an algebraic-algorithmic approach and SAA models, has been extended to generate high-performance VHDL code for the ball balancing problem. The same extension was used for the incremental topology neuroevolution method and the pendulum balancing problem. Finally, existing systems for generating high-performance FPGA code were found to be inflexible and device-specific. As a result, a neural network translation system was created, which was generated using the incremental topology neuroevolution method, in TensorFlow and Xilinx and Intel series FPGAs.

Research papers

Шимкович, В. М., Дорошенко, А. Ю., Мамедов, Т. А., & Яценко, О. А. (2022). Автоматизоване проєктування штучного нейрона для програмованих логічних інтегральних схем на основі алгебро-алгоритмічного підходу. International Scientific Technical Journal "Problems of Control and Informatics", ISSN 2786-6491, 67(5), 61–72. doi: https://doi.org/10.34229/2786-6505-2022-5-6

Сініцин, І. П., Дорошенко, А. Ю., Мамедов, Т. А., & Яценко, О. А. (2023). Метод автоматизованого проєктування нейроеволюційних алгоритмів з використанням алгебри алгоритмів Глушкова. International Scientific Technical Journal "Problems of Control and Informatics", ISSN 2786-6491, 68(3), 74–85. doi: https://doi.org/10.34229/1028-0979-2023-3-8

Мамедов, Т. А., & Дорошенко, А. Ю. (2019). Засіб налаштування програм на платформі. NET за допомогою переписувальних правил. Проблеми програмування, ISSN 1727-4907, 2, 11-16. doi: https://doi.org/10.15407/pp2019.02.011

Мамедов, Г. А., Дорошенко, А. Ю., & Шевченко, Р. С. (2020). Засіб статичного аналізу. NET програм за допомогою переписувальних правил. Проблеми програмування, ISSN 1613-0073, 2-3, 157-163. doi: https://doi.org/10.15407/pp2020.02-03.157

Мамедов Т.А., Дорошенко А.Ю., «Методи верифікації та самоналаштування програм за допомогою переписувальних правил», «УкрПрогАсп-2022-1. 1-а конференція молодих вчених з програмування», Київ, Україна, 2022, с. 10-13

Мамедов Т.А., Дорошенко А.Ю., «Методи верифікації та самоналаштування програм за допомогою переписувальних правил», «УкрПрогАсп-2023-2. 2-а конференція молодих вчених з програмування», Київ, Україна, 2022, с. 35-38

T. Mamedov, A. Doroshenko and R. Shevchenko, "Static Analysis of Resource Consumption in Programs Using Rewriting Rules," 2020 IEEE 2nd International Conference on Advanced Trends in Information Theory (ATIT), Kyiv, Ukraine, 2020, pp. 364-367 doi: https://doi.org/10.1109/ATIT50783.2020.9349290

Мамедов Т.А., Дорошенко А.Ю., Шевченко Р.С., «Засіб статичного аналізу. NET програм за допомогою переписувальних правил», «УкрПрог’2020», Kyiv, Ukraine, 2021 // CEUR Workshop Proceedings. ISSN 1613-0073. 2020. №2866. pp. 157-163.

Doroshenko A., Shymkovych V., Yatsenko O., Mamedov T., «Automated Software Design for FPGAs on an Example of Developing a Genetic Algorithm», «Proceedings of the 17th International Conference on ICT in Education, Research and Industrial Applications. Integration, Harmonization and Knowledge Transfer. Volume I: Main Conference, PhD Symposium, and Posters», 2021 // CEUR Workshop Proceedings. ISSN 1613-0073. 2021. №3013. pp. 74-85.

Similar theses