DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Дослідження конвеєрного виконання інструкцій рухомої коми

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
КН
Кафедра:
Кафедра електронних обчислювальних машин

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

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Архітектура комп'ютерів
Група:
КН-31
Коротко про документ

Про що ця робота

У роботі досліджується та оптимізується ефективність виконання заданого кодового фрагмента на конвеєрі MIPS 64. Наведено базову та оптимізовану версії програми для гіпотези Коллатца.

У роботі розглядаються

  • Конвеєрне виконання інструкцій
  • Архітектура MIPS 64
  • Оптимізація коду
  • Гіпотеза Коллатца

Зміст і розділи

  1. Завдання
  2. Базова програма
  3. Оптимізована версія
Для кого:Студенти технічних спеціальностей та викладачі архітектури комп'ютерів.
Викладачі:Бачинський Р. В.

Ключові поняття

MIPS 64інструкції рухомої комиоптимізаціягіпотеза Коллатцатактуванняпродуктивністькод

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

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра ЕОМ Лабораторна робота №4 ДОСЛІДЖЕННЯ КОНВЕЄРНОГО ВИКОНАННЯ ІНСТРУКЦІЙ РУХОМОЇ КОМИ Завдання: дослідити і оптимізувати ефективність виконання заданого кодового фрагменту на конвеєрі MIPS 64. Базова програма. ; hail.s ; Hailstone numbers iteration ; If number is odd, multiply by 3 and add 1 ; If number is even, divide it by 2 ; repeat this iteration until number is 1 .data number: .word 27 ; this is input number - change it! max: .word 0 ; max number so far .text start: ld r1,number(r0) ; program start loop: andi r3,r1,1 ; test odd or even beqz r3,even odd: dadd r2,r1,r1 ; times 2 dadd r1,r2,r1 ; times 3 daddi r1,r1,1 ; plus 1 j over even: dsrl r1,r1,1 ; divide by 2 over: ld r4,max(r0) slt r3,r4,r1 ; compare with max beqz r3,skip sd r1,max(r0) ; new max skip: slti r3,r1,2 ; test for finished beqz r3,loop halt   Оптимізована версія: Оптимізація заключається в тому що не перевіряється чи число є більше за мах якщо воно було парним і після цього поділилось на 2. .data number: .word 27 max: .word 0 .text start: ld r1,number(r0) ; program start loop: andi r3,r1,1 ; test odd or even bnez r3,odd even: dsrl r1,r1,1 ; divide by 2 j skip odd: dadd r2,r1,r1 ; times 2 dadd r1,r2,r1 ; times 3 daddi r1,r1,1 ; plus 1 over: ld r4,max(r0) slt r3,r4,r1 ; compare with max beqz r3,skip sd r1,max(r0) ; new max skip: slti r3,r1,2 ; test for finished beqz r3,loop halt  
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

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

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

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

Admin

26.02.2023 12:38

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