Details

Title: Повышение производительности вычисления метрики CollectWGS пакетом Picard Tools: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_03 «Разработка программного обеспечения»
Creators: Зайченков Алексей Евгеньевич
Scientific adviser: Маслаков Алексей Павлович
Other creators: Локшина Екатерина Геннадиевна
Organization: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Imprint: Санкт-Петербург, 2020
Collection: Выпускные квалификационные работы; Общая коллекция
Subjects: it-технологии; геном; многопоточность; повышение производительности вычисления; распределенные вычисления; метрики генома; picard tools; java; it-technologies; genome; multithreading; increasing calculation performance; distributed computing; genome metrics
Document type: Bachelor graduation qualification work
File type: PDF
Language: Russian
Speciality code (FGOS): 09.03.04
Speciality group (FGOS): 090000 - Информатика и вычислительная техника
Links: Отзыв руководителя; Отчет о проверке на объем и корректность внешних заимствований
DOI: 10.18720/SPBPU/3/2020/vr/vr20-4288
Rights: Доступ по паролю из сети Интернет (чтение, печать, копирование)

Allowed Actions:

Action 'Read' will be available if you login or access site from another network Action 'Download' will be available if you login or access site from another network

Group: Anonymous

Network: Internet

Annotation

Picard Tools – набор утилит командной строки для работы с файлами геномных последовательностей. Он предоставляет инструменты для их обработки, анализа и вывода его результатов в виде различных метрик. CollectWGSMetrics используется для оценки результатов ранее произведенной обработки данных – процента ранее выровненных на геном ридов, прошедших базовые фильтры качества. Таким образом она позволяет контролировать качество других экспериментов. В данной работе описан процесс поиска путей повышения производительности вычисления этой метрики и разработки применимых для этого алгоритмов. Приведено время работы программы с использованием различных подходов к решению задачи, проанализированы данные, полученные из логов и профилировщиков. В ходе неё рассмотрен вопрос использования распределенных и многопоточных вычислений для более эффективного использования ресурсов вычислительной системы. Работа велась на языке Java с использованием стандартной библиотеки и библиотеки htsjdk. По итогам работы расширен функционал существующего инструмента и предложены пути для его дальнейшего усовершенствования.

Picard Tools is a set of command line utilities for working with genomic sequence files. It provides tools for their processing, analysis and output of its results in the form of various metrics. CollectWGSMetrics is used to evaluate the results of previously performed data processing - the percentage of reads previously aligned to the genome that passed the basic quality filters. Thus, it allows you to control the quality of other experiments. This paper describes the process of finding ways to improve the performance of computing this metric and developing applicable algorithms for this. The operating time of the program using various approaches to solving the problem is given, data obtained from logs and profilers are analyzed. During it, the question of using distributed and multi-threaded computing for more efficient use of computer system resources was considered. The work was conducted in the Java language using the standard library and the htsjdk library. Based on the results of the work, the functionality of the existing tool was expanded and ways for its further improvement were proposed.

Document access rights

Network User group Action
ILC SPbPU Local Network All Read Print Download
Internet Authorized users SPbPU Read Print Download
Internet Authorized users (not from SPbPU)
-> Internet Anonymous

Table of Contents

  • 172423e623f6a2e23ad12f368471af890fc215a3196fe39866db1b5e294a2178.pdf
    • d519af6d9a53807af477459c61acb9b52dda41ef4e65e106e6d49664cfc29200.pdf
    • 570ebdb4a086fbf8684d80e7458927769d11451b46c7ce1311f97293e2407d48.pdf
      • d9d88b5f3070b109ee4865812e25ec6c8daf6fa825dcca8354658caf8fcbe08c.pdf
  • 1b599e674403bdc71878efc382d78064741926da6e2f437ba17a0cf51d44648b.pdf
    • f1d7603b2de20c38fb3639e410bd41a0f56351757dcd554ced9be56701224ec1.pdf
  • 172423e623f6a2e23ad12f368471af890fc215a3196fe39866db1b5e294a2178.pdf
    • d519af6d9a53807af477459c61acb9b52dda41ef4e65e106e6d49664cfc29200.pdf
      • Определения
      • Обозначения и сокращения
      • Введение
      • 1. ОБЗОР ЛИТЕРАТУРЫ
        • 1.1. Исследование предметной области
          • 1.1.1. Сборка ДНК
          • 1.1.1. Сборка генома как вычислительная задача и пути её решения.
        • 1.2. Обзор предыдущей попытки оптимизации алгоритма
          • 1.2.1. Описание алгоритма
          • 1.2.2. Исследование последовательной версии
          • 1.2.3. Параллелизация
          • 1.2.4. Исследование параллельной версии
          • 1.2.5. Подбор оптимальных параметров запуска JVM
          • 1.2.6. Подбор оптимального количества ридов в пачке, пула и изучение влияния Zulu и Zing
        • 1.3. Постановка задачи
      • 2. Теоретическая часть. Обзор архитектурных решений
        • 2.1. Многопоточная архитектура
          • 2.1.1. Релевантность многопоточных вычислений задаче
          • 2.1.2. Распределенные вычисления
          • 2.1.3. Анализ возможностей для разделения и независимого анализа частей исходных файлов
      • 3. Практическая часть.
        • 3.1. Исследование возможностей усовершенствования параллельного вычисления
        • 3.2. Тестирование разных реализаций концепции многопоточности и режимов работы сборщика мусора.
        • 3.3. Поиск вариантов для одновременной обработки нескольких частей файла.
        • 3.4. Реализация и тестирование приложения для распределенного вычисления с архитектурой клиент – сервер.
      • ЗАКЛЮЧЕНИЕ
      • Библиографический список

Usage statistics

stat Access count: 5
Last 30 days: 0
Detailed usage statistics