Оптимизация времени работы алгоритма для многоядерных процессоров в программном комплексе теплового проектирования электронных модулей
Аннотация
Статья посвящена оптимизации времени работы алгоритма программного комплекса STF-ElectronMod, предназначенного для теплового проектирования и моделирования температурных полей электронных модулей как в детерминированных, так и в условиях неопределенности входных данных. Неопределенность входных данных моделируется интервально стохастической моделью, а оптимизация достигается методом распараллеливания матричных вычислений на стационарных компьютерах с многоядерными процессорами. Приведены обоснование выбора способа оптимизации, результаты тестовых вычислений и их анализ. Приведено сравнение скорости работы библиотеки, написанной на языке программирования C++, и скорости работы функции программного комплекса STF-ElectronMod, написанной на языке Pascal. Показано, что выигрыш во времени исполнения библиотечной функции, написанной на C++ при одном задействованном потоке, составляет не менее 30 % по отношению к времени счета, осуществляемого по изначальному неоптимизированному алгоритму программного комплекса STF-ElectronMod. Данное ускорение связано в первую очередь с возможностью компилятора, поддерживающего язык программирования C++, разворачивать циклы для выполнения задач в конвейере команд, что практически не используется в компиляторе Pascal. Результаты тестов показали, что производительность реализованного алгоритма на 4-ядерном процессоре приблизительно в 6 раз выше. Алгоритм оптимизации реализован в виде отдельной библиотеки и включен в программный комплекс.
Об авторах
Е. К. ГребенниковаРоссия
П. И. Кандалов
Россия
Список литературы
1. Мадера А. Г. Концепция математического и компьютерного моделирования тепловых процессов в электронных системах // Программные продукты и системы. 2015. № 4 (112). С. 79–86.
2. Мадера А. Г., Решетников В. Н. Многофункциональный программный комплекс теплового проектирования электронных систем: требования к архитектуре и функциональным возможностям моделирования // Программные продукты и системы. 2017. № 3 (30). С. 367–372.
3. Мадера А. Г., Кандалов П. И. Матрично-топологический метод математического и компьютерного моделирования температурных полей в электронных модулях: программный комплекс STF-ElectronMod // Программные продукты и системы. 2012. № 4. С. 160–164.
4. Мадера А. Г., Кандалов П. И. Моделирование трехмерных температурных полей в электронных модулях // Программные продукты и системы. 2010. № 2. С. 29–33.
5. Свидетельство о гос. регистрации программы для ЭВМ № 2015619835. Заявка № 2015613488. Зарегистрировано в Реестре программ для ЭВМ 15.09.2015.
6. Уильямс Э. Параллельное программирование на C++ в действии: практика разработки многопоточных программ. М. : ДМК Пресс, 2016. 672 с.
7. Левин М. П. Параллельное программирование с использованием OpenMP : учеб. пособие / М. : ИНТУИТ ; БИНОМ. Лаборатория знаний, 2008. 188 c.
8. Хьюз К, Хьюз. Т. Параллельное и распределенное программирование с использованием С++. М. : Вильямс, 2004. 672 с.
Рецензия
Для цитирования:
Гребенникова Е.К., Кандалов П.И. Оптимизация времени работы алгоритма для многоядерных процессоров в программном комплексе теплового проектирования электронных модулей. Вестник кибернетики. 2018;(3 (31)):188-194.
For citation:
Grebennikova E.K., Kandalov P.I. Optimization of Algorithm Execution Time for Multi-Core Processors in Thermal Designing Software of Electronic Modules. Proceedings in Cybernetics. 2018;(3 (31)):188-194. (In Russ.)