Денис Гамаюнов / Иван Зотов, 3 курс, sec-sem

На этом форуме публикуются и уточняются постановки задач студентам, а также отслеживается ход их выполнения

Модератор: staff

Закрыто
Бычков Иван
Аспирант
Сообщения: 179
Зарегистрирован: 23 сен 2008 01:19 pm

Денис Гамаюнов / Иван Зотов, 3 курс, sec-sem

Сообщение Бычков Иван »

Тема работы: Оценка наихудшего времени выполнения линейных участков программ на языке AURA

Постановка задачи: Разработать и реализовать средство оценки наихудшего времени выполнения программ (WCET) на языке AURA в составе компилятора языка.
При этом необходимо статически (на этапе компиляции) оценивать WCET следующих компонентов программ: предикаты переходов, тела переходов, тела состояний.

Для решения данной задачи необходимо выполнить следующие подзадачи:
1. Изучить методы WCET для последовательных программ.
2. Освоить компилятор LLVM, изучить байткод LLVM и кодогенератор для архитектур amd64 и ia32.
3. Проанализировать язык AURA и компилятор в байткод LLVM и выделить те языковые конструкции, которые порождают участки кода, для которых оценить WCET трудно или невозможно. Предложить модификации языка (и компилятора), разрешающие WCET (подмножество языка).
4. Реализовать оценку WCET в компиляторе AURA для выделенного
подмножества языка для целевых архитектур amd64 и ia32.
5. Провести эксперименты с тестовым набором программ, получить для них оценки WCET, сравнить со средним временем выполнения, полученным при профилировке.

Подзадачи на 1 год:
1. Изучить методы WCET для последовательных программ.
2. Освоить компилятор LLVM, изучить байткод LLVM и кодогенератор для архитектур amd64 и ia32.
3. Адаптировать метод оценки WCET, разработанный В. Прусом, для программ в автоматном представлении языка AURA при заданных ограничениях (ограничения формулируются научными руководителями, включают в себя ограничения на глубину дерева экземпляров автомата, на обмен сообщениями и другие).
4. Изучить текущее состояние дел в области наличия модели процессоров архитектуры IA32/AMD64, пригодных для (хотя бы очень грубой) оценки WCET, посмотреть на модель amd64 в составе GCC, совместно с научными руководителями оценить возможность её доработки под решаемую задачу. (По данному пункту допустима полная неудача по объективным причинам).
Закрыто