DOI: 10.14489/vkit.2025.06.pp.003-011
Егунов В. А. ОПРЕДЕЛЕНИЕ ПОКАЗАТЕЛЕЙ ЭФФЕКТИВНОСТИ ПРОГРАММНЫХ СИСТЕМ С РЕГУЛЯРНЫМ ДОСТУПОМ К ДАННЫМ ДЛЯ ВЫЧИСЛИТЕЛЬНЫХ СРЕД С ИЕРАРХИЧЕСКОЙ СТРУКТУРОЙ ПАМЯТИ (с. 3-11)
Аннотация. Представлен аналитический подход к оценке эффективности проектируемых программных систем с точки зрения использования подсистемы памяти с иерархической структурой. Данный подход реализован с использованием статического анализа исходного кода проектируемой программы. Приведены результаты вычислительных экспериментов.
Ключевые слова: эффективность программ; иерархия памяти; кеш-память; кеш-промах; предвыборка данных; оценка эффективности.
Egunov V. A. SOFTWARE PERFORMANCE INDICATORS DETERMINATION FOR COMPUTING SYSTEMS WITH HIERARCHICAL MEMORY STRUCTURE (pp. 3-11)
Abstract. Model-Driven Engineering is one of the software development methodologies. Modeling at the software design stage is mainly used to reduce the development complexity by increasing the abstraction level. Similar approaches are often used to improve the efficiency of the designed software. Efficiency in this case is understood as minimizing the costs associated with software at various life cycle stages, including the costs of software development, modification, and operation. The software efficiency is closely related to the concept of computing resource efficiency, which is determined by the degree of computing resources utilization involved in the computing process. The paper considers an approach based on "white box" modeling, which makes it possible to evaluate the designed software effectiveness based on a mathematical model of a computing system with a hierarchical memory structure. The study is based on the author's previous research, which suggests an iterative method for improving the data caching strategy. This method is based on a set of quality metrics used to evaluate the software effectiveness. Within the framework of this method, an analytical approach has been developed to evaluate the software effectiveness in terms of using a memory subsystem with a hierarchical structure. This approach is implemented using static analysis of the program source code. The process of determining the C-program source code characteristics is described in detail. The conclusions obtained as a result of static analysis are compared with the computational experiments results. The computational experiments results confirm the effectiveness and reliability of the proposed method.
Keywords: Software efficiency; Memory hierarchy; Cache memory; Cache miss; Data prefetch; Efficiency evaluation.
В. А. Егунов (Волгоградский государственный технический университет, Волгоград, Россия) E-mail:
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
V. A. Egunov (Volgograd State Technical University, Volgograd, Russia) E-mail:
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
1. Стронгин Р. Г., Гергель В. П., Гришагин В. А., Баркалов К. А. Параллельные вычисления в задачах глобальной оптимизации. М.: Московский государственный университет, 2012. 280 с. 2. Воеводин В. В., Воеводин Вл. В. Параллельные вычисления. СПб: БХВ-Петербург, 2002. 608 с. 3. Model execution tracing: a systematic mapping study / F. Hojaji, T. Mayerhofer, B. Zamani et al. // Soft-ware and Systems Modeling. 2019. V. 18. P. 3461–3485. 4. Schmidt D. C. Model-driven engineering // Computer-IEEE Computer Society. 2006. V. 39, No. 2. P. 25. 5. Brambilla M., Cabot J., Wimmer M. Model-driven software engineering in practice. San Rafael: Morgan & Claypool Publishers, 2017. 6. Rahman S. M. F., Yi Q., Qasem A. Understanding stencil code performance on multicore architectures // Proceedings of the 8th ACM International Conference on Computing Frontiers (May 3 – 5, 2011), (CF 11). New York, NY, USA: ACM, 2011, P. 30:1–30:10. 7. Low T. M., Igual F. D., Smith T. M., Quintana-Orti E. S. Analytical Modeling Is Enough for High-Performance BLIS // ACM Transactions on Mathematical Software. 2016. V. 43, No. 2. P. 12:1–12:18. 8. Is search really necessary to generate high-performance BLAS? / K. Yotov, X. Li, G. Ren et al. // Proceedings of the IEEE. 2005. V. 93, No. 2. P. 358–386. 9. Communication lower bounds and optimal algorithms for numerical linear algebra / G. Ballard, E. Carson, J. Demmel et al. // Acta Numerica. 2014. V. 23, No. 5. P. 1–155. DOI: 10.1017/S0962492914000038 10. Kravets A. G., Egunov V. A. The software cache optimization-based method for decreasing energy consumption of computational clusters // Energies. 2022. V. 15, No. 20. Article 7509. 11. Егунов В. А., Кравец А. Г. Метод улучшения стратегии кеширования для вычислительных систем с общей памятью // Программная инженерия. 2023. Т. 14, № 7. C. 329–338. 12. Егунов В. А., Кравец А. Г. Новый метод повышения эффективности векторизации операций BLAS // Информационные технологии. 2024. Т. 30, № 6. C. 318–328. 13. Egunov V. A., Kravets A. G. The New Method for Automatic Vectorization Efficiency Increasing // Cyber-Physical Systems. Data Science, Modelling and Software Optimization. Cham, Switzerland: Springer Nature Switzerland AG, 2024. P. 195-208. (Book ser.: Studies in Systems, Decision and Control (SSDC); V. 554). 14. Frigo M., Leiserson C. E., Prokop H., Ramachandran S. Cache-oblivious algorithms // 40th Annual Symposium on Foundations of Computer Science (Cat. No. 99CB37039). October 17–18 1999. IEEE Xplore, 1999. P. 285–297. DOI:10.1109/SFFCS.1999.814600 15. An experimental comparison of cache-oblivious and cache-conscious programs / K. Yotov, T. Roeder, K. Pingali et al. // Proceedings of the 19th annual ACM symposium on Parallel algorithms and architectures. (SPAA 2007). 9–11 June 2007. San Diego, California. P. 93–104. DOI:10.1145/1248377.1248394
1. Strongin, R. G., Gergel, V. P., Grishagin, V. A., & Barkalov, K. A. (2012). Parallel computations in global optimization problems. Moscow State University. [in Russian language] 2. Voevodin, V. V., & Voevodin, Vl. V. (2002). Parallel computations. BHV-Peterburg. [in Russian language] 3. Hojaji, F., Mayerhofer, T., Zamani, B., et al. (2019). Model execution tracing: A systematic mapping study. Software and Systems Modeling, 18, 3461–3485. 4. Schmidt, D. C. (2006). Model-driven engineering. Computer, 39(2), 25. 5. Brambilla, M., Cabot, J., & Wimmer, M. (2017). Model-driven software engineering in practice. Morgan & Claypool Publishers. 6. Rahman, S. M. F., Yi, Q., & Qasem, A. (2011). Understanding stencil code performance on multicore architectures. Proceedings of the 8th ACM International Conference on Computing Frontiers (CF’11), 30:1–30:10. ACM. 7. Low, T. M., Igual, F. D., Smith, T. M., & Quintana-Orti, E. S. (2016). Analytical modeling is enough for high-performance BLIS. ACM Transactions on Mathematical Software, 43(2), 12:1–12:18. 8. Yotov, K., Li, X., Ren, G., et al. (2005). Is search really necessary to generate high-performance BLAS? Proceedings of the IEEE, 93(2), 358–386. 9. Ballard, G., Carson, E., Demmel, J., et al. (2014). Communication lower bounds and optimal algorithms for numerical linear algebra. Acta Numerica, 23, 1–155. https://doi.org/10.1017/S0962492914000038 10. Kravets, A. G., & Egunov, V. A. (2022). The software cache optimization-based method for decreasing energy consumption of computational clusters. Energies, 15(20), Article 7509. 11. Egunov, V. A., & Kravets, A. G. (2023). A method for improving caching strategy for shared-memory computing systems. Programmnaya Inzheneriya, 14(7), 329–338. [in Russian language] 12. Egunov, V. A., & Kravets, A. G. (2024). A new method for improving the efficiency of BLAS operation vectorization. Informatsionnye Tekhnologii, 30(6), 318–328. [in Russian language] 13. Egunov, V. A., & Kravets, A. G. (2024). The new method for automatic vectorization efficiency increasing. In Cyber-physical systems: Data science, modelling and software optimization (pp. 195–208). Springer Nature. (Studies in Systems, Decision and Control, 554). 14. Frigo, M., Leiserson, C. E., Prokop, H., & Ramachandran, S. (1999). Cache-oblivious algorithms. 40th Annual Symposium on Foundations of Computer Science, 285–297. https://doi.org/10.1109/SFFCS.1999.814600 15. Yotov, K., Roeder, T., Pingali, K., et al. (2007). An experimental comparison of cache-oblivious and cache-conscious programs. Proceedings of the 19th Annual ACM Symposium on Parallel Algorithms and Architectures (SPAA’07), 93–104. https://doi.org/10.1145/1248377.1248394
Статью можно приобрести в электронном виде (PDF формат).
Стоимость статьи 700 руб. (в том числе НДС 20%). После оформления заказа, в течение нескольких дней, на указанный вами e-mail придут счет и квитанция для оплаты в банке.
После поступления денег на счет издательства, вам будет выслан электронный вариант статьи.
Для заказа скопируйте doi статьи:
10.14489/vkit.2025.06.pp.003-011
и заполните форму
Отправляя форму вы даете согласие на обработку персональных данных.
.
This article is available in electronic format (PDF).
The cost of a single article is 700 rubles. (including VAT 20%). After you place an order within a few days, you will receive following documents to your specified e-mail: account on payment and receipt to pay in the bank.
After depositing your payment on our bank account we send you file of the article by e-mail.
To order articles please copy the article doi:
10.14489/vkit.2025.06.pp.003-011
and fill out the form
.
|