ВВЕДЕНИЕ 5
1. ОБЗОР НАУЧНЫХ РАБОТ ПО ТЕМАТИКЕ ИССЛЕДОВАНИЯ . 8
1.1. Модель Roofline 8
1.2. Модель Лоусона 10
1.3. Модель PerDome 12
1.4. DMM 13
2. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 15
2.1. Требования к модели 15
2.2. Подмодель аппаратной платформы 16
2.3. Подмодель выполнения 20
3. ПРОЕКТИРОВАНИЕ И РЕАЛИЗАЦИЯ 25
3.1. Библиотека libdhm 25
3.2. Прототип эмулятора 31
4. ВЫЧИСЛИТЕЛЬНЫЕ ЭКСПЕРИМЕНТЫ 33
4.1. Моделирование операции выборки 33
4.2. Моделирование операции соединения 36
ЗАКЛЮЧЕНИЕ 38
ЛИТЕРАТУРА
Одной из отличительных особенностей современных информационных технологий является стремительный рост объема накапливаемых и обрабатываемых данных. Зачастую пользователи информационных систем даже не подозревают, что используемые ими системы вынуждены обрабатывать огромное количество информации для выполнения своей работы. Так, например, каждый час пользователи популярного сетевого сервиса twitter создают более двадцати одного миллиона «твитов», а пользователи крупнейшей социальной сети «Facebook» — более двухсот пяти-десяти миллионов постов. Поисковая система Google обрабатывает более двух миллионов поисковых запросов каждую секунду. Большая часть собранной информации не структурирована, однако значительная ее часть преобразуется в более строгий формат.
Применение параллельных баз данных является важным подходом к обработке таких объемов информации. Быстрый рост объемов обрабатываемой информации подталкивает ученых и разработчиков к поиску новых алгоритмов и архитектурных решений, которые позволили бы повысить эффективность обработки баз данных. Одним из ключевых требований для обеспечения высокой производительности обработки баз данных является грамотное использование аппаратных особенностей используемого оборудования.
Одним из наиболее распространенных видов высокопроизводительных вычислительных систем являются гибридные вычислительные системы, которые оснащены не только центральными процессорами (CPU), но и графическими ускорителями, либо многоядерными сопроцессорами [16]. Более того, некоторые вычислительные системы оснащены несколькими видами многоядерных ускорителей одновременно. Такие вычислительные системы показывают высокий уровень производительности для многих задач, однако они обладают целым отличительных особенностей [9, 10]. Эти особенности делают необходимой разработку новых подходов и решений для достижения максимальной производительности при обработке баз данных.
Создание математических моделей гибридных вычислительных систем является актуальным научным вопросом, поскольку оно позволяет предсказать эффективность того или иного решения при разработке алгоритмов и программных систем. На сегодняшний день существует несколько моделей гибридных вычислительных систем, но все они ориентированы в большей степени на расчетные задачи и не учитывают специфику задач параллельной обработки баз данных. В то же время, существующие математические модели баз данных не учитывают особенностей гетерогенных вычислительных систем.
Учитывая вышесказанное, задача создания математических моделей СУБД, использующих гетерогенные гибридные вычислительные системы для обработки баз данных, является актуальной научной проблемой.
Цель и задачи работы
Целью данного исследования является создание математической модели для моделирования аппаратной платформы мультипроцессора баз данных, оснащенного многоядерными сопроцессорами. Для достижения поставленной цели необходимо решить следующие задачи:
1. выполнить обзор существующих математических моделей гибридных вычислительных систем;
2. разработать подмодель аппаратной платформы;
3. разработать подмодель выполнения модели;
4. спроектировать и реализовать программную библиотеку, реализующую разработанные подмодели;
5. провести вычислительные эксперименты, направленные на валидацию предложенных подмоделей.
Структура и объем работы
Данная работа состоит из введения, четырех глав, заключения и списка литературы. Объем работы составляет 42 страницы, объем библиографии — 25 источников.
Обзор работы
В первой главе проведен обзор существующих на сегодняшний день моделей гибридных вычислительных систем и моделей баз данных.
Во второй главе перечислены требования к математической модели аппаратной платформы мультипроцессора баз данных, оснащенного многоядерными сопроцессорами. Приведены подробные описания под-модели аппаратной платформы и подмодели выполнения.
В третьей главе описана разработка библиотеки libdhm, которая реализует предложенные во второй главе подмодели. Здесь же описана разработка прототипа эмулятора баз данных, использованного для первичной валидации предложенных подмоделей.
Четвертая глава посвящена вычислительным экспериментам, направленным на начальную валидацию предложенных подмоделей.
В рамках данной работы была создана математическая модель для моделирования аппаратной платформы мультипроцессора баз данных, оснащенного многоядерными сопроцессорами. Для достижения поставленной цели были решены следующие задачи:
1. выполнен обзор существующих математических моделей гибридных вычислительных систем;
2. разработана подмодель аппаратной платформы;
3. разработана подмодель выполнения модели;
4. спроектирована и реализована программная библиотека, реализующая разработанные подмодели;
5. проведены вычислительные эксперименты, направленные на валидацию предложенных подмоделей.
В результате выполнения выпускной квалификационной работы были выполнены все поставленные задачи. Таким образом, цель данной работы была достигнута.
Дальнейшими направлениями исследований будут:
— разработка подмодели транзакций модели DHM;
— проверка корректности модели DHM.
Гранты
Данная работа была выполнена при поддержке гранта РФФИ № 16-37-00245 мол_а (2016 - 2017 гг.): «Моделирование параллельной обработки запросов с использованием сжатых колоночных индексов на кластерных вычислительных системах с многоядерными ускорителями».
Публикации
Данная работа является частью комплекса исследований, посвященных моделированию параллельной обработки запросов на высокопроизводительных вычислительных системах с многоядерными ускорителями. По результатам различных этапов этих исследований были опубликованы работы [1, 2, 3, 18, 19, 20, 21, 23].