Главная » Просмотр файлов » Автореферат

Автореферат (1149956), страница 2

Файл №1149956 Автореферат (Оптимизация размещения массивов в общей памяти) 2 страницаАвтореферат (1149956) страница 22019-06-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

ФЦП «Исследования и разработки по приоритетным направлениям научнотехнологического комплекса России на 2009-2013 гг» «Распараллеливание программ с одновременной оптимизацией обращений к памяти» по государственному контракту от «10» октября 2013 г. № 14.514.11.4104 Внутренний грант ЮФУ по Программе развития университета на период до 2021 года в целях повышения конкурентоспособности среди ведущих мировых научно-образовательных центров «Разработка библиотеки алгоритмов решения задач с теплицевыми матрицами и анализ их вычислительных характеристик» 01.05.2013 — 15.12.2013 ° Лаборатория Ангстрем-ЮФУ. ° ФЦП «Научные и научно-педагогические кадры инновационной России», по теме «Создание биоинформационной технологии поиска взаимосвязанных сценариев организации в геномах животных и человека некодирующей ДНК и кодируюшей белок ДНК» Государственный контракт № 14.740.11.000б от 1 сентября 201 О.

° ФЦП «Научные и научно-педагогические кадры инновационной России» на 2009-2013 годы по лоту «Проведение научных исследований коллективами научно-образовательных центров в области информатики» шифр «2009-1.1- 113-050» по теме: «Диалоговый высокоуровневый оптимизирующий распараллеливатель программ и его приложения» (шифр заявки «2009-1.1-113- 050-043») Государственный контракт № 02.740.11.0208 от 7 июля 2009 г. ° Внутренний грант Южного федерального университета «Учебно-научная лаборатория оптимизации и распараллеливания программ», 2007г. Степень достоверности и апробации результатов работы Достоверность результатов диссертации подтверждается математической строгостью изложения алгоритмов, многими численными экспериментами. Результаты, изложенные в диссертации.

опубликованы в 13 научных работах, включая б из перечня российских рецензируемых научных журналов, в которых должны быль опубликованы основные научные результаты диссертаций на соискание ученых степеней докгора и кандидата наук. в том числе 1 в издании, индексируемом в реферативной базе ссорив, 1 монографию и б материалов научных конференций. Имеется свидетельство о государственной регистрации программы ЗВМ. Эти результаты также докладывались на семинарах и конференциях: 1. Национальный суперкомпьютерный форум (НСКФ) 2015.

2. Московский суперкомпьютерный форум (МСКФ) 2014. 3. Параллельные вычислительные технологии (ПаВТ) 2014. 4. Московский суперкомпьютерный форум (МСКФ) 2013. 5. т'ЯС-2013 "Н1кЬ Рег(оппапсе Согприппя апд Япш!апоп", Барселона, Испания, 2013. б. У1 сессия научной школы-практикума молодых ученых и специалистов «Технологии высокопроизводительных вычислений и компьютерного моделирования: технологии еЯс1епсе».НИУ ИТМО. 09.04 13-12.04.13 7. Х1Ч молодежная конференция-школа с международным участием "Современные проблемы математического моделирования", п.

Абрау- Дюрсо, 12-17 сентября 2011 года. 8. На научном семинаре ФГУП Квант, весна 2011 г. 9. «Научный сервис в сети Интернет», г. Новороссийск, 20-2б сентября 2010 г. 10. На постоянно действующем научном семинаре мехмата ЮФУ «Автоматическое распараллеливание программ». Основные положении, выносимые на защиту 1. Модель времени выполнения программ для систем с общей памятью. 2. Высокопроизводительный алгоритм умножения матриц, использующий нестандартное размещение данных.

3. Автоматизация блочного размещения данных в оперативной памяти. Структура и объем диссертации Диссертация состоит из введения, четырех глав, заключения, списка сокращений и списка литературы. Текст диссертации изложен на 127 страницах и содержит 15 примеров, 23 рисунка и 1б таблиц. Список литературы содержит 104 наименования. Основное содержание работы Первая глава носит вспомогательный характер. В ней описываются понятия, необходимые для изложения результатов диссертации.

В параграфе 1.1 приведены принципы работы иерархии памяти современных вычислительных систем. В частности, говорится, что уровнями иерархии памяти являются оперативная память, многоуровневая кеш-память и регистры процессора, в которых также можно хранить данные (Рисунок 1). Рис. 1: Иерархия памяти многих современных процессоров. Дается определение кеш-памяти, виртуальной памяти, кеш-памяти П.В. Параграф 12 посвящен методу тайлинга, который предназначен для оптимизации временной локальности данных. В параграфе 1.3 приведено определение пространственной локальности данных, а также различных методов размещения данных. В частности, описывается блочное размещение данных, автоматическую поддержку которого реализовал автор диссертации в системе ОРС.

Блочное размещение — это способ хранения массива в памяти, при котором массив разбивается на блоки одинакового размера. Блоки матрицы хранятся в памяти последовательно без промежутков гРисунок 2). Элементы, находящиеся внутри одного блока, хранятся в памяти стандартным образом, например, по строкам: Рис.

2: Блочное размещение элементов матрицы Ях8. На месте элементов матрицы расположен относительный адрес соответствующего элемента. Общая формула вычисления адреса элемента с индексом (ц) матрицы Х имеет следующий вид: Таблица 1. Результаты профилировки блочного алгоритма Флойда-Уоршалла ТЬеоге11са$ типе (вес) Ь2 сасне 1.1 сас)те ппвв ппи 1птраст пп ас1 Е!аркен (вес) 1Д.З сасне ппвв 1птрас1 27.39792 6.9 0.22 47.919996 46.652864 0.44 1.0 2630375 26.08492 45.936372 45.513963 0.7 2048 128 0.92 0.95 0.92 47.382814 0.79 2048 176 3.0 2.5 49.601719 1.0 6.0 2048 192 71.89401 50.248607 11.0 2048 256 10 асЫг(Ху)= Х+(юг, )ЧН /сЦМ +Г(lй,)ЫМ, +Г!Ч4,)Я~+)%с1, (1) где М2 — количество элементов в строке матрицы Х, д1хс(2 — размер блока. В параграфе 1.4 приводится понятие выравнивания данных в памяти.

На примерах представлено как производится выравнивание данных современными компиляторами. Параграф 1.5 содержит обзор компиляторов, которые содержат в своем составе оптимизации работы с памятью. В частности, приводится описание проекта ТА1С, который входит в систему компиляторов КОКЕ и представляет собой расширение языков С/С++. Следует отметить, что блочные размещения массивов не поддерживаются проектом ТА1 С, Вторая глава посвящена построению модели прогнозирования времени выполнения программ. Данная модель позволяет определять оптимальные параметры для блочных программ. Сначала приводится общая формула времени выполнения программ, которая имеет следующий вид: Т( ) емгор> т Г ) ~иод Г ) где и — размер входных данных, Т(п) — время выполнения программы.

Т,„„,„„,„(п)- общее время выполнения арифметических операций, Т, „Гп) - общее время перекачки данных между оперативной памятью и кеш-памятью. Точная формула времени выполнения зависит от алгоритма. На основе данной формулы в параграфах 2.1-2.2 строятся специализированные формулы времени выполнения программ, реализующих алгоритм блочного умножения матриц, а также блочного алгоритма Флойда-Уоршалла. Точность формул демонстрируется численными экспериментами. В частности, для блочного алгоритма Флойда-Уоршалла результаты численного эксперимента приведены ниже: Из эксперимента видно, что оптимальный размер блока равен 160.

В таблице приведено также теоретическое время работы программы, которое вычисляется с использованием полученной формулы времени выполнения программы. Теоретическое значение размера блока близко к практическому значению и равно 192 В таблице 2. приведены результаты численного эксперимента, в котором замерялось время работы блочного алгоритма Флойда-Уоршалла с блочным размещением. Таблица 2.

Результаты профилировки блочного алгоритма Флойда-Уоршалла с блочным размещением Т)теогепса1 птпе (зес) 1.1.3 сасне ш1як 1ш ас1 Ь2 сасне пэ1зз пп ас1 1.1 сас)те ппзз пп ас~ Е1арзей 1зес) 25,72449 25,62641 2555972 2048 272 2048 336 43.762151 43.48941 43.375812 0.26 0,59 0.28 0.85 0.61 0,51 2048 496 0.44 2048 528 0.53 0.84 43.320609 43.144292 25.49195 25.47484 0.47 0.68 0.5 0.88 0.42 560 0.68 0.41 44.037547 2.7 0.48 25.43403 71.89401 0.56 44.883257 3.9 0.1 11 Из эксперимента видно, что оптимальный размер блока равен 528. Теоретическое оптимальное значение размера блока близко к пракгическому значению и равно 624.

Параграф 2.3 посвящен анализу масштабируемости параллельного блочного алгоритма Флойда. В конце параграфа приводится оценка оптимального количества ядер процессора, при котором теоретическое время работы алгоритма будет минимальным. В параграфе 2.4 описывается метод статического определения количества кеш-промахов, возникших во время выполнения алгоритма. Третья глава посвящена построению высокопроизводительного алгоритма умножения матриц рекордной производительности. В параграфе 3.1 описываются существующие высокопроизводительные алгоритмы умножения матриц (1п1е1 МКЬ, Р1.АЯМА и ОрепВ?.АЯ). В параграфе 3.2 приводится описание алгоритма умножения матриц рекордной производительности.

В основе реализованного автором алгоритма умножения лежит следующий блочный алгоритм умножения матриц. представленный на листинге 1. Листинг 1. Основа алгоритма умножения матриц рекордной производительности Внутри функции 81оскМи1г производится умножение блоков матрицы А и матрицы В, результат сохраняется в блок матрицы С. Матрицы при реализации такого алгоритма умножения разбиваются на блоки согласно схеме представленной на Рисунке 3. 9 С 1Л~ Рис. 3. Схема разбиения матриц для высокоуровневой части алгоритма умножения матриц Особенностью предлагаемого алгоритма является то, что данные хранятся в памяти дважды блочно.

Так, матрица А размещается в оперативной памяти прямоугольными блоками размера Р х 0~, которые хранятся по столбцам: Оперативная память Рис. 4. Размещение блоков матрицы А в оперативной памяти. Стрелки показывают, где блоки матрицы хранятся в оперативной памяти. Матрица В размещается в оперативной памяти блоками размера Р: ~~., которые хранятся по строкам: О! в РМ Оперативная память Рис. 5. Размещение блоков матрицы В в оперативной памяти.

Стрелки показывают, где блоки матрицы хранятся в оперативной памяти. Матрица С разбивается на блоки размера Р "~~, которые хранятся по строкам: Оперативная память Рис. 6. Размещение блоков матрицы С в оперативной памяти. Стрелки показывают, где блоки матрицы хранятся в оперативной памяти. Умножаемые блоки при таком размещении разбиваются на блоки меньшего размера согласно схеме, представленной на Рисунке 7. В!осад ~В!ос~В 8 В1ос1С вЂ” 14 Рис. 7. Разбиение блока В1оН, матрицы А, блока Иос/с„матрицы В и блока- результата ВЬИс матрицы С для размещения их в оперативной памяти. Параметр Е выбирается, исходя из размера кегц-памятн 11, а именно - Е должно быть таким, чтобы умножаемый блок второго уровня матрицы А, умножаемый блок второго уровня матрицы В, а также блок матрицы С с результатами вычислений помещались в кеш-памяти 1.1: (4~8+4" Е+8~1)' вгео1(доиЫе1 < и' еог(1ЛСаиЬе) В этом случае элементы блока матрицы В не будут вытесняться между итерациями.

В параграфе ЗЗ приводятся результаты численных экспериментов, в которых сравнивается производительность программной реализации разработанного алгоритма умножения матриц, а также программных реализаций других алгоритмов 11пге1 МК1., Р1.АБМА, ОрепВ1.АБ), В частности, для случая, когда размер матрицы А равен А ~ 2048 и размер матрицы В равен 2048~ Ю графики производительности приведены на Рисунке 8. 14 с ф~,, ~ ~с ЯиряряФяярйьп) МК1. ~.'рррр.лр марри рийрв рррр) иапо 5СХ Рис. 8. Графики производительности программных реализаций предлагаемого алгоритма„а также алгоритмов пакетов МК1., ОрепВ1.АБ и Р1.АЯМА.

Характеристики

Тип файла
PDF-файл
Размер
15,21 Mb
Высшее учебное заведение

Список файлов диссертации

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6372
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее