Arch: new
Все теоритические билеты по Архитектуре ЭВМ в основном были написаны, кроме: 8.4; 13.4; 14.4; 15.4. Задачи будут позже.
This commit is contained in:
5
2 курс/1 семестр/Архитектура ЭВМ/Лекции/17 билет/1.md
Normal file
5
2 курс/1 семестр/Архитектура ЭВМ/Лекции/17 билет/1.md
Normal file
@ -0,0 +1,5 @@
|
||||
#### Определение динамического предсказания ветвлений.
|
||||
|
||||
**Динамическое предсказание ветвлений** - аппаратные схемы, которые динамически предсказывают переходы на основе поведения программы при исполнении, т.е. информация о предыдущих ветвлениях используется, чтобы динамически предсказать исход текущего перехода. ЦП отслеживает выполнение условных переходов в течение работы программы и куда выполнится переход.
|
||||
Позволяет сократить время простоя за счёт предварительной загрузки и исполнения инструкций, которые должны выполниться после выполнения инструкции условного перехода.
|
||||
Прогнозирование ветвлений играет критическую роль, так в большинстве случаев (точность предсказания переходов $\geq 90\%$) позволяет оптимально использовать вычислительные ресурсы процессора.
|
21
2 курс/1 семестр/Архитектура ЭВМ/Лекции/17 билет/2.md
Normal file
21
2 курс/1 семестр/Архитектура ЭВМ/Лекции/17 билет/2.md
Normal file
@ -0,0 +1,21 @@
|
||||
#### Описание двухуровневого механизма динамического предсказания ветвлений с учетом корреляции.
|
||||
|
||||
Соседние переходы могут коррелировать: поведение недавно выполненных переходов влияет на предсказание текущего перехода.
|
||||
Это имеет место в ветвлениях, использованных для реализации конструкций if-then-else.
|
||||
Предполагается, что есть 2 уровня предсказаний:
|
||||
|
||||
1) **Глобальный**
|
||||
|
||||
Запись истории поведения m последних переходов как выполнившихся или нет. Обычно используется m -битный регистр сдвига.
|
||||
|
||||
2) **На один адрес ветвления**
|
||||
|
||||
- $2^m$ таблиц предсказания, каждая запись таблицы - это n-битный счетчик с насыщением.
|
||||
- Запись истории $1^{го}$ уровня используется для выбора соответствующей из таблиц предсказания $2^{го}$ уровня. Таким образом каждая с $2^m$ таблиц содержит $2^N$ записей и каждая запись - 2-битный (к примеру счетчик).
|
||||
- Общее количество необходимых для $2^{го}$ уровня бит: $2^m \times n \times 2^N$. n - количество бит, используемое для предсказания.
|
||||
**GAp** - Global Adaptive per address.
|
||||
Используется обозначение GAp $(m,n)$, которое означает:
|
||||
- Записываются последние $m$ ветвлений для выбора между $2^m$ таблицами истории.
|
||||
- Каждая таблица истории $2^{го}$ уровня использует n-битные счетчики (имеет разрядность n бит).
|
||||
- Одноуровневая схема бимодальной ВНТ с 2-битными счетчиками обозначается как предсказатель $(0,2)$
|
||||
|
6
2 курс/1 семестр/Архитектура ЭВМ/Лекции/17 билет/3.md
Normal file
6
2 курс/1 семестр/Архитектура ЭВМ/Лекции/17 билет/3.md
Normal file
@ -0,0 +1,6 @@
|
||||
#### Схема MCFarling'a gshare. Преимущества схемы.
|
||||
|
||||
**gshare** = global history with index sharing
|
||||
McFarling предложил использовать и глобальную историю и адрес ветвления, объединяя их хешированием. Функция хеширования: XOR от регистра глобальной истории ветвлений (BHR) и адреса ветвления. Он ожидал, что такой хеш содержит больше информации, чем каждая из компонент. В результате предложенная схема превзошла GAp при малых размерах таблиц.
|
||||
Новая схема обладает меньшими требованиями к оборудованию для реализации по сравнению с GAp, поскольку использует одну общую таблицу предсказателей.
|
||||
Требуется на k бит истории $2 \times 2^k$ в таблице 2-битных счетчиков.
|
10
2 курс/1 семестр/Архитектура ЭВМ/Лекции/17 билет/4.md
Normal file
10
2 курс/1 семестр/Архитектура ЭВМ/Лекции/17 билет/4.md
Normal file
@ -0,0 +1,10 @@
|
||||
#### Определение и принцип работы гибридных/турнирных/комбинированных предсказателей.
|
||||
|
||||
**Гибридные (турнирные, комбинированные) предсказатели** - комбинации 2 или более механизмов предсказания переходов.
|
||||
McFarling заметил, что использование глобальной истории поведения переходов может быть менее эффективно, чем просто использование адреса инструкции перехода, особенно для маленьких таблиц предсказателей. McFarling исследовал несколько различных комбинаций 2-х механизмов предсказания переходов.
|
||||
Он предложил использовать дополнительный массив 2-бит счетчиков как селекторов для выбора более эффективной схемы предсказания для каждого перехода.
|
||||
1 схема предсказания соответствует 2 большим значениям селектора, другая $-2^{ом}$ меньшим.
|
||||
Если $1^{ый}$ предсказатель ошибся, а $2^{ой}$ - нет, счетчик уменьшается.
|
||||
Если $1^{ый}$ предсказатель прав, а $2^{ой}$ - нет, счетчик увеличивается.
|
||||
|
||||
Никаких изменений, если оба оказались правы или ошиблись.
|
Reference in New Issue
Block a user