4
страниц
Вирабян Э.В.
(Государственный инженерный университет
армении ГИУА)
ПЕРСЕПТРОННОЕ
ПРЕДСКАЗАНИЕ ВЕТВЛЕНИЙ
Смысл метода предсказания с
помощью перцептрона заключается в том, что используется из нейронных сетей
простой метод – перцептрон, как альтернативный метод обычному двух битному
счетчику. Правильность предсказаний предиктора является использование длинной
предистории, поскольку для этого метода аппаратурные ресурсы линейные, а не
экспоненциальные.
Ключевые слова: метод предсказания,
перцептрон, предиктор.
Биологический нейрон имеет вид
показанный на рис. 1. В 1943 году была предложена модель биологического нейрона
(рис.2), как устройство, которое имеет несколько входов (входные синапсы-дентриты)
и один выход (выходной синапс-аксон). Дентриты получают информацию из информационных
источников (рецепторы) Li, источником
информации могут служить нейроны. Набор входных сигналов {Li}
описывает обьект, его состояние. На каждый i-ый
вход j-ого
нейрона подается некоторый весовой коэфициент Iij, который описывает активацию
воздействия сигнала этого входа на аргумент функции, чем и решается выходной
сигнал Yj нейрона. В нейроне происходит сложение
весов входных сигналов и полученное значение используется как аргумент
функции активирующий нейрон.
Рис. 2. Модель нейрона Макаловка и Пита Yj=F(Ij) I1j I2j I3j 1 0 Yj Дентрит Сома Аксон Рис. 1.Структура биологоческого нейрона
На рис. 3 представлена
графическая модель перцептрона. Перцептрон описывается как вектор, в
котором элементы являются весами–целые числа. Выход перцептрона y
определяется следующим выражением:
Рис. 4. Общая схема перцептронного предиктора Таблица перцептронов Адрес команды перехода Регистр предистории Результат перехода Обучение > 0 Определение
y Выбранный перцептрон Предсказание Выбор входа
Рис. 3. Модель
перцептрона . . . . . . w0 w1 w2 wi wn 1 x1 xi xn y x2
Когда процессор на стадии
выборки команды конвейера встречает команду перехода происходят
следующие шаги: адреса команд переходов распределяются в соответствии своим
индексом i
Рис. 5. Блок-схема перцептронного предсказания y Результат предсказания W0 W1 W3 W2 1 0 -w1 1 0 -w2 1 0 -w3 CSA X1 X3 X2 Перцептроны из BTB GHR 1
if sign(y)
≠ t or |y| ≤ θ then
for i := 0 to n do
wi := wi
+ txi
end for
end if
Рис. 6. Блок-схема обучения перцептрона Результат предсказания 1 0 1 0 1 0 GHR w1-1 == == == Результат предсказания Запись в BTB w3-1 w1+1 w2+1 w3+1 w2-1 1 0 w0-1 w0+1 1 X1 X3 X2 W0 W1 W3 W2
На рис. 7 и 8 представлены
соответственно организация схем обучения перцептрона и блок-схема.
Рис. 7.
Организация схемы
перцептронного предсказания 1 t 24 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 0 1 2 3 4 5 6 7 8 9 10 11 A B Cin Cout S A B Cin Cout S A B Cout S A B Cin Cout S Sum0 Sum1 Sum2 Sum3 Sum4 Sum5 1 x1 x2 x3 =1 =1 =1 =1 4 19 5 6 7 19 19 19 =1 =1 =1 =1 8 21 9 10 11 21 21 21 =1 =1 =1 =1 13 14 15 23 23 23 12 23 19 21 23 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 0a 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 RG RG RG RG RG 0 1 2 3 0 1 2 3 C R 0 1 2 3 0 1 2 3 C R 0 1 2 3 0 1 2 3 C R 0 1 2 3 0 1 2 3 C R S1 S0 DR 0 1 2 3 DL R 0 1 2 3 20 21 22 23 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 t Предсказание A B Cin Cout S A B Cin Cout S A B Cin Cout S A B Cin Cout S A B Cin Cout S A B Cin Cout S A B Cin Cout S A B Cout S
В BTB В BTB Рис. 8. Организация схемы
обучения перцептронов 1 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 “1” 0 1 2 3 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 “1” 0 1 2 3 0 1 2 3 4 5 6 7 A x00 x10 x20 x30 x01 x11 x21 x31 y0 y1 y2 y3 0 1 2 3 4 5 6 7 0 24 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 “1” 8 9 10 11 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 “1” 8 9 10 11 0 1 2 3 4 5 6 7 A x00 x10 x20 x30 x01 x11 x21 x31 y0 y1 y2 y3 0 1 2 3 4 5 6 7 0 24 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 “1” 4 5 6 7 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 “1” 4 5 6 7 0 1 2 3 4 5 6 7 A x00 x10 x20 x30 x01 x11 x21 x31 y0 y1 y2 y3 0 1 2 3 4 5 6 7 0 20 24 = = 18 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 “1” 12 13 14 15 C0 A0 B0 A1 B1 A2 B2 A3 B3 S0 S1 S2 S3 C4 “1” 12 13 14 15 0 1 2 3 4 5 6 7 A x00 x10 x20 x30 x01 x11 x21 x31 y0 y1 y2 y3 0 1 2 3 4 5 6 7 0 24 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 = = = =
Литература
1.
И.В.Бескоровайный, “Динамическое предсказание переходов с
использанием расширенной глобальной истории”, Сборник научных трудов, 2005,
с.3-18.
2.
Dynamic Branch Prediction using Machine LearningAlgorithms
Kedar Bellare, Pallika
Kanani and Shiraj SenDepartment of Computer Science,University of Massachusetts Amherst, 2006