Глобальный оптимизатор для.NET приложений Серебрянский Андрей 544гр. Научный руководитель: Дмитрий Степанович Ломов Рецензент: Дмитрий Юрьевич Булычев.

Презентация:



Advertisements
Похожие презентации
ParaCon Система параллельного программирования на основе типовых алгоритмических структур Истомин Тимофей Научный руководитель: д.ф-м.н. Берзигияров П.К.
Advertisements

Расширение цифрового осциллографа системы управления за счет включения анализатора сигналов Цель: Создание методики построения подсистемы анализа сигналов.
1 Генерация контекстных ограничений для баз данных Выполнил: Жолудев В. Научный руководитель: Терехов А.Н. Рецензент: Иванов А.Н.
Технология MVC в высоконагруженных проектах Андрей Шетухин Илья Космодемьянский.
БЭСТ Дизайнер проектов Введение Концепции Основные понятия.
ВОССТАНОВЛЕНИЕ ТЕКСТА ФОРТРАН-ПРОГРАММЫ ИЗ ВНУТРЕННЕГО ПРЕДСТАВЛЕНИЯ СИСТЕМЫ КОМПИЛЯТОРОВ GCC Выполнила: студентка 527 группы Алексашина Татьяна Михайловна.
Разработка архитектуры для генератора синтаксических анализаторов Выполнил: Улитин Константин Научный руководитель: Я.А. Кириленко Курсовая.
ПРЕЗЕНТАЦИЯ НА ТЕМУ: ПРЕЗЕНТАЦИЯ НА ТЕМУ: ВИДЫ ТРАНСЛЯЦИИ Составил: Ревнивцев М.В Преподаватель: Кленина В.И.
Архитектура операционных систем. Архитектура ОС Состав модулей (компонент) ОС Структура связей между отдельными модулями ОС Принципы взаимодействия модулей.
Декомпозиция сложных дискретных систем, формализованных в виде вероятностных МП-автоматов. квалификационная работа Выполнил: Шляпенко Д.А., гр. ИУ7-83.
Восстановление текстов программ по преобразованному синтаксическому дереву Выполнил: Юрий Литвинов, 545гр. Научный руководитель: Дмитрий Копаев.
Технология Фрагментированного Программирования Летняя школа по параллельному программированию Отдел МО ВВС ИВМиМГ СО РАН 2009 г.
Архитектура операционных систем Семестр 2, Лекция 1.
Языки и методы программирования Преподаватель – доцент каф. ИТиМПИ Кузнецова Е.М. Лекция 7.
Исполнительный директор Гладких Л.В. Москва, 2009 г. Инструменты создания распределённых приложений. Используя основные идеи SOA ЗАО «МНПП НАМИП»
Автор : Ладыгина А.А. Научный руководитель : к.ф.м.н., доцент кафедры Систем Информатики НГУ, с.н.с. Васючкова Татьяна Сергеевна Система поддержки дистанционного.
Реализация генерации исходного кода бизнес-процессов информационных систем на основе диаграмм BPMN в технологии REAL-IT/.NET Руслан Мокаев, 545 гр. Научный.
Система автоматизированного тестирования свойств математических моделей судов Смирнова Ольга, 545 группа Научный руководитель: К.ф.-м.н. Григорьев В.Н.
Докладчик: Бульёнов А. В., аспирант Научный руководитель: Шалыто А. А., д. т. н., профессор, зав. кафедрой КТ Методы автоматного программирования в разработке.
Учебный курс Объектно-ориентированный анализ и программирование Лекция 4 Трансформация логической модели в программный код Лекции читает кандидат технических.
Транксрипт:

Глобальный оптимизатор для.NET приложений Серебрянский Андрей 544гр. Научный руководитель: Дмитрий Степанович Ломов Рецензент: Дмитрий Юрьевич Булычев

Постановка задачи Повторное использование кода Структурное программирование Объектно-ориентированиое программирование Программы строятся из компонент COM Java.NET Недостатки Чрезмерная абстракция Параметризация компонент Конечное приложение зачастую не использует всю функциональность компоненты

Оптимизация приложения Идея: оптимизировать приложение как набор взаимодействующих компонент Гибкость. Богатый набор настроек для управления оптимизацией Расширяемость. Возможность модификации представленных алгоритмов Эффективность. Безопасность. Оптимизации не должны менять семантику программы Преимущества данного подхода Отсутствует необходимость в исходном коде Отсутствует необходимость явно указывать часть входных параметров для методов Глобальный анализ позволяет учесть все зависимости и значения глобальных переменных

Существующие работы Partial Evaluation of an Object-Oriented Imperative Language ( Morten Marquard, Bjarne Steensgaard, Department of Computer Science, University of Copenhagen ) COMPOSE ( Ulrik P. Schultz, Julia L. Lawall, Charles Consel, Gilles Muller ) CILPE (Andrei M. Chepovsky, Andrei V. Klimov ) Offline смешанный вычислитель Поддерживает объекты, объекты с частично известными полями, массивы и простые типы Преимущества данной работы Оптимизация применяется в контексте всего приложения Используется гибридный смешанный вычислитель Реализованы вспомогательные алгоритмы для улучшения периода связывания (binding-time improvements)

Обзор реализации Проектная модель и менеджер алгоритмов Настройки оптимизации. Интерфейс расширения. Пользователи могут модифицировать реализованные алгоритмы либо использовать свои реализации Глобальный анализ Приоритет методов. Эвристика Анализ значений глобальных переменных Оптимизатор Менеджер хранения

Оптимизатор Гибридный смешанный вычислитель Поливариантное разделение переменных Объекты, частично известные структуры и массивы, простые типы Binding-time improvements Пример: (x+y)+1 и (x+1)+y Раскрутка циклов Кэширование Предотвращение зацикливания

Результаты тестирования Тестирование проводилось на многокомпонентных приложениях, которые используют математическую библиотеку для вычислений Название тестаRatio matrix_multiplication1.61 cos1.83 ray_tracing1.45 chebyshev1.1 fft0.96

Выводы Создан оптимизатор для приложений на платформе.NET Тестирование показало его достаточную эффективность Дальнейшие планы Поддержка коллекций Де-виртуализация Использование особенностей JIT компилятора