Использование вращающихся регистров в двоичном оптимизирующем компиляторе. презентация

… … B[N-M] … B[1] B[0] B[N] B[N-M+1] Вращающиеся регистры Обращение к регистрам относительно базы

Слайд 1
Использование вращающихся регистров в двоичном оптимизирующем компиляторе.


Слайд 2

B[N-M]

B[1]
B[0]
B[N]
B[N-M+1]
Вращающиеся регистры
Обращение к регистрам относительно базы


















База = M
0
1

M-1
M
M+1

N

ABN
Накрутка цикла

Use B[0]
Def B[0]
Def

B[1]

End

Branch+ABN





Слайд 3

Представление
Использование цикловых виртуальных регистров с поколениями

L1[2]
L1[1]
L1[0]










L0[0]
L0[1]
- Один номер регистра для одной

связной сети графа потока данных

- Продвижение базы уменьшает поколение на единицу

- За корректное и оптимальное отображение цикловых виртуальных регистров на вращающиеся отвечает Распределение.


B[M+4]

B[M+3]

B[M+2]











B[M+0]

B[M+1]





ABN

ABN

L1[2]

L1[1]

L1[0]


Слайд 4

Восстановление контекста
SRP (R1, L2[1],…)

Def -> R1

Прерывание

SRP (R5, L6[3],…)
Регистры – аргументы контрольной

точки не должны изменяться до регистрации следующей SRP




При возникновении прерывания откатываемся к последней зарегистрированной SRP и выполняем её компенсирующий код, восстанавливающий контекст


Комп. код

MOV R1 -> G0(EAX)

ADD L2, 4 -> G1(ECX)



Слайд 5Время жизни аргументов SRP







SRP (R1, L2…)
SRP (…)
SRP (L1…)
SRP (…)
SRP (L1…)

Def->R1
ABN
ABN
Запись в

аргумент SRP

Непредсказуемое число
продвижений базы

Пересечение продвижения базы ограниченное число раз


Слайд 6Принятые решения




MOV R1->R2
SRP (R2, L2…)
SRP (R2, L1[1]…)
SRP (…)
Def->R1

ABN
MOV R1->R2

L1[0]
Дополнит. поколения

SRP
SRP (R2,

L1[1]…)

Внешний цикл

Коррекция аргумента SRP

Самодостижимая SRP


Слайд 7Обеспечение фронта SRP

SRP (L1…)
ABN




SRP (L2…)
ABN
SRP

SRP

в голове цикла обеспечивает фронт


SRP (L1…)

ABN





ABN

SRP


SRP


Если нет других SRP в цикле, защитную SRP можно вынести в предцикл


Слайд 8Изменение базы на прямом пути



Use L1
Def -> L1

ABN



Use L1
Def -> L1

ABN

Обеспечение

при переименовании

Поддержка далее до распределения


Слайд 9Эффективное распределение
Подграф
управления




ABN
…L1…

Mov L1->R2


ABN
…L2…

Mov R3->L2
Подграф




ABN
…L1…


ABN
…L2…
Подграф

Подграф
Def L2
Use L1
Эффективное определение пересечений областей жизни разных

регистров

Слайд 10







1
Результаты
Целые тесты 6,5 %
Плавающие тесты 26 %
Мультимедиатесты 32 %


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика