🚀 Вийди на новий рівень крипто-торгівлі!
Easy Trade Bot — автоматизуй свій прибуток уже зараз!

Ми пропонуємо перелік перевірених прибуткових стратегій на такі пари як BTC, DOT, TRX, AAVE, ETH, LINK та інші. Ви можете підключити автоматичну торгівлю на своєму акаунті Binance або отримувати торгові рекомендації на email у режимі реального часу. Також можемо створити бота для обраної вами монети.

Всі результати торгів ботів доступні для перегляду у зручних таблицях на головній сторінці. Швидко, динамічно та прозоро!

Перейти до бота + 30$ бонус

ДОСЛІДЖЕННЯ КОНВЕЄРНОГО ВИКОНАННЯ ІНСТРУКЦІЙ РУХОМОЇ КОМИ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
КН
Кафедра:
ЗІ

Інформація про роботу

Рік:
2022
Тип роботи:
Лабораторна робота
Предмет:
Архітектура комп ютерних систем

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти та науки України Національний університет «Львівська політехніка» ІКТА Кафедра ЗІ / Лабораторна робота №4 з дисципліни: «Архітектура комп’ютерних систем» на тему: «ДОСЛІДЖЕННЯ КОНВЕЄРНОГО ВИКОНАННЯ ІНСТРУКЦІЙ РУХОМОЇ КОМИ» Львів 2022 Мета роботи - опанування технікою конвеєрного виконання RISC інструкцій для операндів формату рухомої коми. Завдання Засобами архітектурного симулятора WinMIPS64 машини з 64-розрядною RISC архітектурою MIPS64 дослідити конвеєрне виконання фрагментів машинних програм, що команди опрацювання операндів в форматі з рухомою комою. Виявити наявні залежності (небезпеки) даних і керування, оптимізувати програмний код та дослідити дію запропонованої оптимізації. За результатами проведених лабораторних досліджень оформити звіт та захистити його. Виконання роботи Було надано код програми: .data number: .word 27 max: .word 0 .text start: ld r1,number(r0) loop: andi r3,r1,1 beqz r3,even odd: dadd r2,r1,r1 dadd r1,r2,r1 daddi r1,r1,1 j over even: dsrl r1,r1,1 over: ld r4,max(r0) slt r3,r4,r1 beqz r3,skip sd r1,max(r0) skip: slti r3,r1,2 beqz r3,loop halt Виконання програми asm.exe за допомогою Windows PowerShell, яка дозволяє перевірити синтаксис програми до її виконання та її результат: / Оскільки синтаксис є правильним, наступним кроком буде виконання програми та його результат: / Програма відпрацювала за 2403 цикли, виконуючи 1028 інструкцій, тому на одну інструкцію припадає 2,338 циклів. Бачимо, що присутні 1054 пригальмовування RAW (Read after write). Проте можлива оптимізація цього коду, змінивши послідовність початку виконання фунцій та надано дозвіл на використання випередження (forwarding) і апаратури передбачення напрямку умовного переходу (branch target buffer). Після оптимізації отримано наступний код програми: .data number: .word 27 max: .word 0 .text start: ld r1,number(r0) andi r5,r1,1 loop: dadd r2,r1,r1 beqz r5,even odd: dadd r1,r2,r1 ld r4,max(r0) daddi r1,r1,1 slt r3,r4,r1 andi r5,r1,1 beqz r3,even sd r1,max(r0) j loop even: dsrl r1,r1,1 slti r3,r1,2 andi r5, r1,1 beqz r3,loop halt Перевірка синтаксису програми до її виконання та її результат: / Після запуску програми у WinMIPS64 та його виконання, програма відпрацювала за 864 циклів (на 1 539‬ цикли менше ніж у попередній), виконуючи 729 інструкцій, тому на одну інструкцію припадає 1,185 циклів для її виконання. Бачимо, що присутнє 1 пригальмування. / Висновок: Опанувавши техніку конвеєрного виконання RISC інструкцій для операндів формату рухомої коми, була виконана дана лабораторна робота, оптимізовано код для його швидкодії за допомогою зміни послідовності виконання функцій, функціями Forwarding (випередження) та Branch Target Buffer (прогнозування напрямку умовного переходу).
Антиботан аватар за замовчуванням

08.04.2025 12:04-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!