Show simple item record

dc.contributor.authorТіхвиський, О.В.
dc.contributor.authorКаратанов, О.В.
dc.date.accessioned2025-09-03T16:29:24Z
dc.date.available2025-09-03T16:29:24Z
dc.date.issued2025
dc.identifier.citationТіхвиський, О. В. Огляд сучасних методів оптимізації продуктивності комп’ютерних програм / О. В. Тіхвиський, О. В. Каратанов // Відкриті інформаційні та комп'ютерні інтегровані технології : зб. наук. пр. – Харків, 2025. – Вип. 104. – С. 133–144.uk_UA
dc.identifier.issn2071-1077
dc.identifier.urihttp://dspace.library.khai.edu/xmlui/handle/123456789/9085
dc.description.abstractУ статті здійснено комплексний аналіз сучасних підходів до оптимізації продуктивності комп’ютерних програм в умовах безперервного ускладнення обчислювальних задач і збільшення обсягів оброблюваних даних. Розглянуто основні апаратні й програмні чинники, що визначають ефективність виконання програм, включаючи архітектурні особливості центральних та графічних процесорів, організацію багаторівневої пам’яті, підтримку векторних обчислень та механізми паралельної обробки даних. Особливу увагу приділено впливу вибору алгоритмів і структур даних на швидкодію програмного забезпечення, враховуючи аспекти локальності пам’яті, уникнення промахів кешу та мінімізації обсягів передавання даних між різними рівнями ієрархії пам’яті. Проаналізовано типові проблеми, пов’язані з накладними витратами на створення та синхронізацію потоків, а також із затримками виконання через розгалуження у коді. Розглянуто принципи ефективного використання багатоядерних процесорів і гетерогенних платформ, де оптимальний розподіл обчислень між CPU та GPU є критичним для досягнення високої продуктивності. Підкреслюється важливість обґрунтованого вибору оптимізаційних стратегій залежно від специфіки прикладного завдання, особливостей апаратного середовища та характеру обчислювального навантаження. У роботі наголошується на необхідності системного підходу до оптимізації, що передбачає не лише використання окремих прийомів, але й їх комплексну інтеграцію з урахуванням взаємного впливу на кінцеву продуктивність. Також акцентовано на важливості емпіричного оцінювання результатів оптимізації, що базується на реальних вимірюваннях часу виконання, профілюванні продуктивності та аналізі використання ресурсів. Сформульовано узагальнені рекомендації щодо побудови високопродуктивних програмних систем, спрямовані на мінімізацію затримок доступу до пам’яті, оптимізацію обробки умовних переходів, раціональне використання можливостей апаратних прискорювачів та забезпечення ефективного паралелізму. Представлені результати можуть бути корисними як для розробників програмного забезпечення, що працюють над підвищенням продуктивності прикладних систем, так і для дослідників у галузі високопродуктивних обчислень, сприяючи розвитку нових методик оптимізації в умовах еволюції обчислювальних архітектур.uk_UA
dc.description.abstractThis article provides a comprehensive analysis of modern approaches to optimizing the performance of computer programs in the context of the increasing complexity of computational tasks and the growing volume of data to be processed. The main hardware and software factors influencing the efficiency of program execution are considered, including the architectural features of central and graphics processors, the organization of multi-level memory systems, support for vectorized computations, and mechanisms for parallel data processing. Special attention is given to the impact of algorithm and data structure selection on the performance of software, taking into account memory locality, cache miss avoidance, and the minimization of data transfer volumes across different levels of the memory hierarchy. Typical challenges related to overhead from thread creation and synchronization, as well as delays caused by branching in code execution, are analyzed. Principles for the effective use of multicore processors and heterogeneous platforms are discussed, highlighting the critical role of optimal task distribution between CPUs and GPUs for achieving high performance. The article emphasizes the necessity of a systematic approach to optimization, involving not only the application of individual techniques but also their comprehensive integration, considering their combined effect on overall performance. The importance of empirical evaluation of optimization results through real execution time measurements, performance profiling, and resource utilization analysis is underscored. General recommendations are formulated for the development of high-performance software systems, aimed at minimizing memory access delays, optimizing conditional branch handling, efficiently utilizing hardware accelerators, and ensuring effective parallelism. The findings presented may be valuable both for practicing software developers working on application performance improvement and for researchers in the field of high-performance computing, contributing to the advancement of new optimization methodologies in the evolving landscape of computational architectures.uk_UA
dc.language.isoukuk_UA
dc.publisherХАІuk_UA
dc.subjectоптимізаціяuk_UA
dc.subjectпродуктивністьuk_UA
dc.subjectбагатопотоковістьuk_UA
dc.subjectкеш процесораuk_UA
dc.subjectпередбачення розгалуженьuk_UA
dc.subjectконвеєризаціяuk_UA
dc.subjectпопереднє вибиранняuk_UA
dc.subjectSIMDuk_UA
dc.subjectoptimizationuk_UA
dc.subjectperformanceuk_UA
dc.subjectmultithreadinguk_UA
dc.subjectmultithreadinguk_UA
dc.subjectprocessor cachesuk_UA
dc.subjectbranch predictionuk_UA
dc.subjectpipelininguk_UA
dc.subjectprefetchinguk_UA
dc.titleОгляд сучасних методів оптимізації продуктивності комп’ютерних програмuk_UA
dc.typeArticleuk_UA


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record