Развитие механизмов долговременного хранения двоично- транслированных кодов Научный руководитель: Ермолович Александр Владленович Московский Физико-Технический Институт Роман А. Соколов 112 группа ЗАО МЦСТ
Взаимодействие ДТС и базы кодов 2/8
Основные требования к БК 1. Эффективное использование процессорного времени 2. Повышение коэффициента переиспользования кода 3. Эффективное использование пространства БК необходим механизм быстрого поиска трансляций в БК при подкачке; необходим механизм быстрого поиска трансляций в БК при подкачке; алгоритм старения не может использовать процедуру дефрагментации; алгоритм старения не может использовать процедуру дефрагментации; необходим алгоритм замещения старых трансляций новыми, не создающий необходим алгоритм замещения старых трансляций новыми, не создающий фрагментацию. фрагментацию. размер БК ограничен, сеанс работы вычислительного комплекса размер БК ограничен, сеанс работы вычислительного комплекса неограничен, поэтому алгоритм старения должен обеспечивать неограничен, поэтому алгоритм старения должен обеспечивать сохранность до следующего сеанса наиболее интенсивно подкачиваемых сохранность до следующего сеанса наиболее интенсивно подкачиваемых регионов; регионов; 3/8
Развитие механизмов работы БК при откачке все трансляции попадают в Базу Кода 1; при откачке все трансляции попадают в Базу Кода 1; информация о трансляциях в БК заносится в хеш-таблицу поиска; информация о трансляциях в БК заносится в хеш-таблицу поиска; База Кода 2 предназначена для сохранения интенсивно подкачи- ваемых трансляций, селекцию которых в БК1 осуществляет алгоритм старения; База Кода 2 предназначена для сохранения интенсивно подкачи- ваемых трансляций, селекцию которых в БК1 осуществляет алгоритм старения; 4/8 Используется идея учета и разделения поколений объектов; Используется идея учета и разделения поколений объектов; В основе алгоритмов замещения используется принцип FIFO. В основе алгоритмов замещения используется принцип FIFO.
Результаты: тест Win3.1 (1/2) 5/8 Прирост производительности ДТС при использовании БК с разными алгоритмами старения (по сравнению со схемой ДТС без БК) * Вариант БК с алгоритмом старения LRU * ** ** Вариант БК с новым алгоритмом старения
Результаты: тест Win3.1 (2/2) 6/8 Издержки на БК (% от общего времени работы теста) LRU Новая схема
Анализ: следующий этап 7/8 Проблема: большая часть трансляций, попавших в БК, затирается, не успев подкачаться. Решение: возложить задачу первичной селекции часто исполняемых регионов на кэш регионов. Причина: заключается в модели взаимодействия БК и ДТС – в БК откачиваются все оптимизированные регионы. Статистика откачки/подкачки регионов LRU Новая схема Регионов
Спасибо за внимание! Q&A
Приложение: алгоритм старения Пример размещения новой трансляции в БК1: Цифры означают размер блоков в условных единицах 5/8