Дослідження ефективності віртуальної багатопоточності (2, 3, 4 потоки) типу hyper threading при виконанні потоків в однакових та різних умовах

Автор(и)

  • Д.О. Недзельський Cхідноукраїнський національний університет імені Володимира Даля
  • С.О. Сафонова Cхідноукраїнський національний університет імені Володимира Даля
  • Л.В. Барбарук Cхідноукраїнський національний університет імені Володимира Даля

DOI:

https://doi.org/10.33216/1998-7927-2022-275-5-21-27

Ключові слова:

багатопотокова віртуальність, процесор, ядро, конвеєр команд, перешкоди, продуктивність, ефективність

Анотація

В статті аналітичними методами з елементами теорії масового обслуговування досліджена ефективність ядер сучасних процесорів з використанням віртуальної багатопоточності типу технології Hyper Threading при 2-х, 3-х, 4-х потоках з урахуванням структурних особливостей ядра як при виконанні потоків в однакових умовах, так і в різних умовах. Під однаковими умовами розглядалося виконання потоків, коли використовували однакові обсяги рівнів кеш-пам'яті. Під різними умовами розглядалися ситуації, коли потоки послідовно виконувалися в умовах з використанням доступних обсягів кеш-пам'яті, а паралельно потоки виконувалися в гірших умовах використання кеш-пам'яті (з використанням нижчого рівня кеш-пам'яті або навіть оперативної пам'яті).

 Для дослідження вибрано широко поширені та наочні програми: «Множення матриць», «Рішення диференціальних рівнянь у приватних похідних методом сіток». У програмах, що досліджувалися було виділено ядро, уточнені інформаційно залежні команди і команди редукції, сформовані групи команд, їх кількість та  визначені часи виконання кожної групи в програмі ядра, а також  визначені ймовірності появи кожної групи команд. Розроблено методику досліджень та модель ядра. Для дослідження використовувалася двофазна спрощена модель ядра процесора. Було визначено коефіцієнт навантаження універсального ФП та, в залежності від значення різних параметрів програми і ядра процесора, визначено коефіцієнт використання ПУ моделі, визначені середній час виконання ядра програми та середні часи використання окремих спеціалізованих функціональних пристроїв.

Наведено результати досліджень у вигляді формул при 2-х, 3-х та 4-х потоках в одному фізичному ядрі як при виконанні потоків в однакових умовах, так і в різних умовах. Підтверджена ефективність віртуальної багатопоточності типу Hyper Threading  при двох, трьох, чотирьох потоках з відсутністю структурних конфліктів, так і при різних умовах – наявності структурних конфліктів в підсистемі кеш-пам’яті.

При виконанні потоків у різних умовах ефективність (коефіцієнт прискорення) менша, ніж при виконанні в рівних умовах. Якщо при виконанні одного потоку використовується більше половини кеш-пам'яті третього рівня або потрібна інтенсивна робота з оперативною пам'яттю, використання віртуальної багатопоточності недоцільно.

Посилання

1. Є.О. Шквар. Ефективність використання технології ві-ртуальної багатопоточності при паралельному розв'я-занні рівняння Пуассона. Вісник НАУ, Київ. 2012 N3 (101), том 2, С.138- 141.

2. Буділовський С. Simultaneous Multithreading (SMT) в топовом AMD Ryzen 7 2700X: тестування в синтетиці і іграх. Постійний URL: https://ru.gecid.com/cpu/simultaneous_multithreading_smt_v_amd_ryzen_7_2700x

3. Недзельський Д.О. Дослідження ефективності підсис-теми генерації команд в ядрах сучасних процесорів. Луганськ: Вісник Східноукраїнського національного університету ім. В. Даля, 2017. - №8 (238), - С.64-66.

4. Недзельський Д.О., Сафонова С.О., Барбарук Л.В. Аналітичне дослідження ефективності ядер процесорів при наявності «перешкод» з використанням технології Hyper Threading Наукові вісті Далівського університе-ту. Електронне наукове фахове видання. - 2021. - №21. doi: https://doi.org/10.33216/2222-3428-2021-21-3.

##submission.downloads##

Опубліковано

2022-12-10