Детальная информация

Название: Разработка менеджера оптимизирующих и анализирующих проходов библиотеки анализа Java байт-кода «KFG»: выпускная квалификационная работа бакалавра: направление 09.03.01 «Информатика и вычислительная техника» ; образовательная программа 09.03.01_02 «Технологии разработки программного обеспечения»
Авторы: Сахибгареев Рамис Ринатович
Научный руководитель: Ахин Марат Халимович
Организация: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Выходные сведения: Санкт-Петербург, 2022
Коллекция: Выпускные квалификационные работы; Общая коллекция
Тематика: компиляторы; Java байт-код; менеджер проходов; оптимизация кода; анализ кода; сompilers; Java byte-code; pass manager; source code optimization; source code analysis
Тип документа: Выпускная квалификационная работа бакалавра
Тип файла: PDF
Язык: Русский
Уровень высшего образования: Бакалавриат
Код специальности ФГОС: 09.03.01
Группа специальностей ФГОС: 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2022/vr/vr22-1000
Права доступа: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Ключ записи: ru\spstu\vkr\17155

Разрешенные действия:

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа: Анонимные пользователи

Сеть: Интернет

Аннотация

Тема ВКР: «Разработка менеджера оптимизирующих и анализирующих проходов библиотеки анализа Java байт-кода "KFG"». В данной работе изложены результаты поиска и анализа существующих решений, а также реализация менеджера проходов библиотеки KFG. Задачи, решаемые в ходе выполнения работы: Изучение существующих решений менеджера проходов. Разработка подхода работы с конвейером проходов и зависимостями. Разработка менеджера проходов библиотеки KFG. Тестирование и интеграция новой версии KFG в инструмент автоматической генерации тестов KEX. В результате были исследованы существующие решения в LLVM и GCC и разработан менеджер прохода с составлением валидной и квазиоптимальной очереди проходов, кэширования результатов анализа, удобными средствами создания конвейера проходов, а также произведена интеграция в KEX.

The subject of the undergraduate qualification work is «Pass manager development for Java byte-code optimization and analysis library "KFG"». This work presents the results of the search and analysis of existing solutions, as well as the implementation of the pass manager for KFG library. During this work the next tasks were solved: Studying existing implementations of pass manager.Development of an approach for working with a pipeline of passes and dependencies. Development of Pass Manager for KFG library. Testing and integrating a new version of KFG into platform for automatic test generation KEX. As a result, the pass manager was implemented in accordance with the developed approach for the pipeline and dependencies usage. An evaluation of the convenience of the new version of KFG by integration into an existing project was made, as a result of which a decision was made on the applicability of the created approach.

Права на использование объекта хранения

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все Прочитать Печать Загрузить
Интернет Авторизованные пользователи СПбПУ Прочитать Печать Загрузить
-> Интернет Анонимные пользователи

Оглавление

  • 1. Обзор
    • 1.1. Проблема и актуальность
    • 1.2. Существующие аналоги
      • 1.2.1. LLVM Legacy Pass Manager
      • 1.2.2. LLVM New Pass Manager
      • 1.2.3. GCC Pass Manager
    • 1.3. Резюме
  • 2. Требования к разработке
  • 3. Описание менеджера проходов в KFG
    • 3.1. Разработка алгоритмов построения квазиоптимальной очереди исполнения проходов
    • 3.2. Общие свойства алгоритмов на основе BFS
    • 3.3. Алгоритм Best-First Search
    • 3.4. Алгоритм Iterative BFS
    • 3.5. Алгоритм Iterative BFS+
    • 3.6. Оценка алгоритмов оптимизации
    • 3.7. Резюме
  • 4. Разработка менеджера проходов в KFG
    • 4.1. Описание существующей на начало работы архитектуры проходов библиотеки KFG
    • 4.2. Реализация менеджера проходов в библиотеке KFG
    • 4.3. Резюме
  • 5. Тестирование
    • 5.1. Тестирование менеджера проходов в KFG
    • 5.2. Интеграция менеджера проходов в KEX
    • 5.3. Резюме

Статистика использования

stat Количество обращений: 2
За последние 30 дней: 0
Подробная статистика