Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемВсеволод Тузлуков
1 UGENE Tech Talk: от поиска повторов к облакам Константин Оконечников Unipro 2010
2 Содержание Часть 0: введение Проект Unipro UGENE Часть 1: real-life bioinformatics Работа с биологическими данными Алгоритмы биоинформатики HPC и облачные вычисления Часть 2: за кулисами Разработка в деталях Особенности создания СПО 2
3 Введение 3
4 Unipro UGENE Цель проекта – интеграция наиболее используемых алгоритмов анализа генетических данных в единой визуальной рабочей среде, удобной для прикладного специалиста. Свободная лицензия; Кросс-платформенность; Модульная архитектура, более 30 расширений; Единый, удобный пользовательский интерфейс; Концептуальная целостность в работе данными; Эффективное использование вычислительных ресурсов; Поддержка составных методов анализа данных. 4
5 Занимательные факты Поддерживаемые платформы: Windows, Mac, Linux X11 Язык программирования: C++, Qt Большая часть интегрированных алгоритмов встроена на уровне исходного кода 5
6 Краткий обзор возможностей UGENE Множественное выравнивание: MUSCLE, Kalign, Clustal, Mafft Сверхбыстрый поиск повторов 3D визуализатор молекул Визуализация и редактирование хроматограмм Аннотирование геномов 6 Анализ гомологии на основе цепей Маркова (HMMER) Поиск открытых рамок считывания для всех генетических таблиц Поддержка запросов к удаленным базам данных (типа BLAST, CDD) Сайты рестрикции, cайты связывания транскрипционных факторов
7 Краткий обзор возможностей UGENE Редактор вычислительных схем Интуитивно понятный интерфейс пользователя; Расширяемость – легкое добавление новых вычислительных блоков; Каждый блок может иметь различные оптимизированные реализации для различных платформ; Автоматическая загрузка всех доступных вычислительных ресурсов; Интерактивность. 7 Высокопроизводительные вычисления Многоядерные процессоры Кластеры и грид-системы GPGPU, специальные вычислители Облачные вычисления
8 Текущее состояние проекта Более 1000 активных пользователей Проект входит в официальные версии дистрибутивов Linux: Ubuntu, Fedora, Arch Взаимодействие с российскими и рядом зарубежных институтов в области вычислительной молекулярной биологии Перенос задач на суперкомпьютеры 8
9 Real-life bioinformatics 9
10 Рост объемов информации 10
11 Форматы данных Genbank EMBL CLUSTAL MSF STOCKHOLM FASTA FASTQ NEWICK NEXUS ABI SCF HMMER2/3 MMDB PDB GFF SAM CSV Plain text 11
12 Биологические объекты Последовательность Множественное выравнивание Трехмерная структура Филогенетическое дерево Аннотация Хроматограмма … 12
13 Sequence Алфавит –DNA,RNA,аминокислотный Аннотации Quality –Sanger и т.д. Форматы: –Genbank –Fasta –...over
14 Множественное выравнивание Состоит из последовательностей «Помнит» смещения Требует особой визуализации –Вариативность –Масштабирование 14
15 Трехмерная модель белка Набор координат атомов Вторичная структура Граф химических связей Домены 15
16 Работа с форматами Определение типа объекта «Неправильные» файлы –Несоответствия –Ошибки Режимы чтения и записи Запись или экспорт? 16
17 «Большие» данные Индексирование –Потоковое чтение/запись –Суффиксный массив –Управление памятью –Мета данные 17
18 18 Кэш Данные Активное представление Карта данных Активное представление
19 Pairwise alignment Динамическое программирование –Нидлман-Вунш –Смит-Ватерман –Весовые матрицы Blast/PsiBlast Hidden Markow Model 19
20 Multiple Alignment Clustal Muscle KAlign Mafft TCoffee 20
21 Сборка контигов Reference (по сути pairwise) –Bowtie –Bwa –Cufflinks –Mummer De Novo (без референтная) –AMOS 21
22 Genomics & genetics Поиск повторов Ферменты рестрикции Транскрипционные факторы Рамки считывания Подбор праймеров Моделирование экспериментов генной инженерии 22
23 Анализ белков Предсказание вторичной структуры Фолдинг и третичная структура Поиск активных сайтов Предсказание взаимодействия Обратная трансляция Взаимодействие РНК 23
24 UGENE Service Идея: использование удаленных вычислительных ресурсов для решения задач биоинформатики 24
25 Аппаратное обеспечение Многоядерные процессоры Расширенные наборы инструкций SIMD (SSE,SSE2,AltiVEC) Архитектура CELL процессоров NVIDIA GPU с CUDA библиотекой ATI GPU с ATISTREAM библиотекой 25
26 Компоненты сервиса 1) Графический интерфейс создания вычислительных схем и запуска вычислений 2) Вычислительный модуль –Менеджер вычислительных задач UGENE (внутренний планировщик) –Сервис управления процессами в кластерной среде или вычислительном облаке (внешний планировщик) 3) Центр администрирования 26
27 Менеджер вычислительных задач Низкоуровневая реализация алгоритмов Планировщик выполнения заданий Оптимизация приоритета задач и выделяемой памяти Состояние работы вычислительной схемы
28 Сервис управления процессами Взаимодействие с удаленными процессами UGENE Инициирует запуск задач Управление очередью задач Управление ресурсами кластера или вычислительного облака 28
29 Центр администрирования Установить параметры сервиса управления процессов: ограничить мощности CPU, дисковую и оперативную память и т.д. Вести учет пользователей использующих HPC платформу, просматривать пользовательские записи, управлять авторизационными механизмами. Использовать средства мониторинга пользовательских запросов для просмотра статистики задач. 29
30 Практика: Amazon EC2 Сервис предоставляет вычислительные мощности в облаке. Позволяет: Использовать заранее подготовленный образ виртуальной машины содержащий приложение, данные и связанные с ними конфигурационные параметры. Загружать образ в виде виртуальной машины заданной категории мощности; Использовать динамический или статический IP для данной машины; Использовать блоки хранения данных с возможностью динамической подгрузки и т.д Управлять инфраструктурой с помощью API: java, cmd line, python 30
31 UGENE на Amazon EC2 31
32 UGENE на Amazon EC2 32
33 За кулисами UGENE 33
34 Процесс разработки Непрерывный цикл: Проектирование Разработка Тестирование Ревью Срок релиза: 2 месяца 34
35 Что мы применяем Visual Studio, Qt Creator C++, bash Qt 4.7 Subversion Mantis bug tracking system Jetbrains Teamcity Wiki 35
36 Разработка Нацеленность на результат Жесткие временные рамки Кодекс разработчика UGENE Контроль качества Ответственность Помощь в ревью 36
37 Тестирование Использование Jetbrains Teamcity –Pre-commit build –Nightly, weekly build –Remote tasks –Binary Snapshots Автоматические тесты (база более 5000, постоянно пополняется) Мануальные тесты 37
38 Deployment Binary snapshots в team-city Windows –NSIS installer Mac –Script based on Firefox-installer Linux –Binary X11 snapshot –Native packages 38
39 Официальные дистрибутивы Linux Завязка –Создание скриптов –Переписка Продвижение Поддержка –Форс-мажор почти всегда –Правила разные 39
40 Хаос СПО Legacy code –«Велосипеды» –Очень старый код Война лицензий –Идеи автора –Неясности 40
41 Становление коммьюнити Работа с пользователем –Невыполнимые запросы –Неочевидные вопросы –Непонятные реквесты Обратная связь Как подружиться? Наша позиция 41
42 Полезные ссылки
43 Спасибо Вопросы ? 43
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.