4744
Комментарий:
|
← Версия 3 от 2020-03-31 11:43:24 ⇥
4716
|
Удаления помечены так. | Добавления помечены так. |
Строка 11: | Строка 11: |
Строка 14: | Строка 12: |
Строка 21: | Строка 17: |
Строка 24: | Строка 18: |
Строка 33: | Строка 25: |
Строка 41: | Строка 31: |
Строка 44: | Строка 32: |
Строка 49: | Строка 35: |
Строка 52: | Строка 36: |
Строка 57: | Строка 39: |
Строка 61: | Строка 41: |
'''Just and time''' - преобразования кода уже готового к выполнению в момент когда он выполняется.() |
. '''Just and time''' - преобразования кода уже готового к выполнению в момент когда он выполняется.() |
Строка 64: | Строка 43: |
Строка 72: | Строка 47: |
Строка 89: | Строка 62: |
{{attachment:2.png}} |
Компьютеры росли случайно.
Нужно увеличение удельной производительности компьютеров.
Способы увеличения производительности:
● увеличить тактовую частоту(при этом электропотребление увеличивается экспоненциально как и выделяемое тепло -> неэффективный => дорогой)
● оптимизация действий компьютера(оптимизация логики || стена памяти || перестройка процессора)
Закон Мура (не научный закон(совпадение)) - каждые 2 года скорость компьютеров увеличивается в 2 раза и др ресурсы компьютера также.
Проблема - доступ к памяти (внешняя память - ее много, но она медленная)
Решение - переработка работы с внешней памятью => улучшение работы процессора с оперативной памятью.
Процессоры сейчас не эффективны,т.к. в них много ядер - копипаста процессоров находящихся в одном процессоре.
При попытке разработки двух устройств которые бы работали параллельно возникает проблема - зависимость инструкции друг от друга ( когда для решения 2-й инструкции необходимо решить первую, иначе 2-я не имеет смысла => оптимизировать работу не выходит )
Так же есть проблема зависимости инструкций по выполнению, когда мы не можем понять какую инструкцию выполнять следующую. (переход || возврат функции)
Из-за этих проблем решение происходит не параллельно а последовательно => оптимизировать работу не получается.
Как ускорить работу процессора:
- увеличить количество вычислительных устройств
- научить процессор выполнять векторные операции (когда одна единственная инструкция кот может работать с данными большей/переменной длины )
Арифметика логического устройства - та часть процессора которая занимается вычислением.
Данные забиты в вектора с которыми работает процессор наученный работать с векторными операциями.
“Оптимизация на лету” - когда уже приехал готовый код с которым вы работаете.
Суперскалярные операции - когда процессор перепроектирован таким образом что он может выполнять несколько инструкций одновременно. ( выявление кусков кода независимых друг от друга которые можно выполнять параллельно )
Способ более эффективной загрузки многокомпонентного компьютера - упреждающее вычисление
Just and time - преобразования кода уже готового к выполнению в момент когда он выполняется.() Пеленгование регистра - нэ понэл (переименование регистра)
Pipeline - конвеер
Смысл: при спуске на уровень ниже
Стадии работы одного такта:
● выборка/получение новой инструкции
● декодирование инструкции
● получить данные инструкции
● вычисление инструкции
● раскладывание данных