CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia

Страница создана Николай Родионов
 
ПРОДОЛЖИТЬ ЧТЕНИЕ
CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia
CUDA АЛЬМАНАХ
    ®

      МАЙ 2016
CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia
СОДЕРЖАНИЕ

НОВОСТИ NVIDIA CUDA

Алгоритм опережает специалистов в распознавании речи                     3

Землетрясение на Гаити способствовало созданию новых методов             4
оценки надежности сооружений с использованием GPU

Имперский колледж Лондона использует GPU для диагностики                 6
повреждений мозга

Больше, чем внешняя привлекательность: GPU помогают беспристрастно       8
отслеживать морщины и другие биомаркеры старения лица

Технологии распознавания лиц на основе GPU помогали подавать             9
напитки в баре

ВЕБИНАРЫ НА АНГЛИЙСКОМ ЯЗЫКЕ                                             11

НАУЧНЫЕ РАБОТЫ С ИСПОЛЬЗОВАНИЕМ ВЫЧИСЛЕНИЙ НА CUDA                       12

Глубокое обучение в задачах классификации временных рядов                12
// О. Ю. Бахтеев, М. С. Попова, В. В. Стрижов

Использование технологии NVIDIA CUDA для сокращения времени обработки    15
данных с использованием алгоритма Магма // Ищукова Е.А., Богданов К.И.

ПОЛЕЗНЫЕ РЕСУРСЫ ПО CUD A                                                17
КОНТАКТЫ                                                                 18

НОВОСТИ NVIDIA CUDA

CUDA АЛЬМАНАХ / МАЙ 2016                                                 2
CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia
АЛГОРИТМ ОПЕРЕЖАЕТ СПЕЦИАЛИСТОВ
В РАСПОЗНАВАНИИ РЕЧИ
Исследователи из Университета Восточной Англии в Великобритании разработали алгоритм,
способный интерпретировать произносимые человеком слова с более высокой степенью
точности, чем специалисты по распознаванию речи.
Используя графические ускорители Tesla K80, ученые натренировали модель глубокого
обучения распознавать движения рта, соответствующие определенным звукам человеческой
речи, без опоры на какие-либо аудио сигналы.
«Мы изучаем движения губ человека при произнесении звуков и спрашиваем себя, как они
отличаются друг от друга? У всех людей есть свои особенности мимики. Как они задействуют
ее? В чем заключаются отличия? И можем ли мы вообще использовать эти знания для
обучения нашей модели? Мы решили, что можем», - рассказала доктор Хелен Бир (Dr. Helen
Bear), которая в рамках своей диссертационной работы совместно с профессором Ричардом
Харви (Prof Richard Harvey) из Школы компьютерных наук в Университете Восточной Англии
разработала систему распознавания речи по движению губ и мимике говорящего.

Примеры характерных особенностей, записываемых для повышения точности чтения
по губам. Зеленым отмечены основные точки, используемые в моделях для отслеживания мимики говорящего.

По словам доктора Бир, основная проблема заключается в том, что люди произносят больше
звуков, чем существует визуальных образов для них. К примеру, существуют звуки, при
произношении которых губы имеют практически одинаковое положение, например, [п],
[б] и [м]. Эти звуки вызывают затруднения у специалистов. Система распознавания речи,
разработанная в Университете Восточной Англии, способна более точно различать положение
губ при произнесении подобных звуков.
Однажды эта технология может предоставить коммуникационные возможности людям
с нарушениями слуха и речевого аппарата. Она может быть использована для распознавания
того, что говорят люди на видео, запись которых ведется без звука, или для улучшения
качества видеозвонков на мобильных телефонах.
Узнать подробнее.

CUDA АЛЬМАНАХ / МАЙ 2016                                                                                3
CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia
ЗЕМЛЕТРЯСЕНИЕ НА ГАИТИ СПОСОБСТВОВАЛО
СОЗДАНИЮ НОВЫХ МЕТОДОВ ОЦЕНКИ НАДЕЖНОСТИ
СООРУЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ GPU
Ужасающее землетрясение на Гаити в 2010 году разрушило большую часть инфраструктуры,
необходимой для проведения аварийно-спасательных работ, включая все больницы
в столице, дороги и важные коммуникационные системы.
Это произвело сильнейшее впечатление на Дэвида Латтанци (David Lattanzi), инженера-
проектировщика, прибывшего на место происшествия, чтобы оценить техническое состояние
мостов, больниц и домов. Осознавая, что более быстрый осмотр позволит оперативнее
принимать решения относительно безопасности важных объектов, он разработал новый
метод с использованием высокопроизводительных вычислений.
«Чем больше времени занимает инспекция после катастрофы, тем дольше люди не могут
вернуться домой или на работу. Больницы не могут работать. Основные службы не могут
функционировать, - рассказал Латтанци, доцент из Университета Джорджа
Мейсона в Фэрфаксе, Виргиния. - Это влечет за собой огромные социальные
и экономические издержки».

Дрон, осматривающий мост, Университет Джорджа Мейсона

Латтанци использует роботизированные системы технического контроля, например, дронов,
для создания виртуальных 3D моделей гражданских сооружений для оценки их безопасности
как в обычных условиях, так и после катастроф.
Благодаря своей работе Латтанци и его команда попали в список пяти финалистов премии
NVIDIA Global Impact Award 2016. Каждый год мы вручаем премию в $150 000 исследователям,
использующим технологии NVIDIA в принципиально новых проектах для решения социальных,
гуманитарных и экологических проблем.
Оценка положения конструкций
В то время как катастрофа на Гаити помогла расширить сферу работы Латтанци,
высокопроизводительные вычисления позволили ему сконцентрироваться на решении самой
сложной задачи, с которой сталкиваются инженеры во время обследования. Им необходимо
оценить, насколько сооружения сместились относительно своего первоначального проектного
положения.
«Разрушения, которые мы ищем, могут быть совсем малозначительными, - объяснил
Латтанци. - Трудность заключается в обработке больших объемов данных. С точки зрения
вычислений, наша работа была бы невозможна без GPU».
Создание трехмерных реконструкций крупных сооружений с использованием традиционных
методов на основе фотографирования, известных как определение структуры объекта
по отображению движения

CUDA АЛЬМАНАХ / МАЙ 2016                                                               4
CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia
(Structure-from-Motion), не всегда позволяет добиться разрешения, необходимого для
анализа. Команда Латтанци использует этот метод в работе с 3D конструкциями, оперируя
данными, полученными из цифровых изображений с дронов.
Недостатком является огромный объем данных, полученных с помощью беспилотных дронов.
Для оценки состояния моста длиной в 100 метров может потребоваться обработать до 10 000
снимков высокого разрешения.
Фиксация важнейших деталей
Чтобы зафиксировать малейшие детали, команда Латтанци разработала метод
преобразования изображений с дронов в облака точек и их использования для получения
финальной модели конструкций.
Для качественной инспекции необходимы модели, полученные с помощью облака,
содержащего миллиарды точек. Поэтому команда Латтанци разработала иерархическую
генерацию облаков точек, или HPCC, для высокоточного воссоздания как деталей, так
и общей геометрии конструкций. Благодаря HPCC инженеры могут сфокусироваться -
со 100-кратным увеличением разрешения - на мелких деталях для оценки целостности
конструкции.
Для каждого полета дрона разрабатываются маршруты съемки. Во время каждого полета дрон
снимает изображения сооружения в разном масштабе, включая очертания всей конструкции.
Фиксируются как крупномасштабные изображения, так и небольшие, но важные детали.
Понаблюдайте за дроном, обследующим мост.

Высокопроизводительное аппаратное обеспечение
Чтобы справляться с огромными объемами данных, команда использует ускорение
на графических картах NVIDIA Tesla. Без ускорения на GPU, которое позволяет повысить
скорость вычислений до 10 раз, на создание 3D модели одного моста или здания ушло
бы несколько недель.
В прошлом году команда Латтанци протестировала свой метод в Аляске, проведя осмотр
моста с помощью дрона для Федерального лесного управления США. Высокоточное
управление дроном позволило получить важные данные, не подвергая людей опасности.
«Результаты произвели на нас сильнейшее впечатление», - рассказал Латтанци.

CUDA АЛЬМАНАХ / МАЙ 2016                                                                5
CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia
Обследование моста в Аляске было проведено совместно с Аляскинским университетом
в Фэрбенксе, который сконструировал и запустил дронов, и Федеральным лесным
управлением США.
Команда Латтанци также использовала графические карты NVIDIA Quadro и GeForce для
визуализации финальных моделей. Когда размер моделей превышает 1 миллиард точек
в облаке, требуется высокопроизводительное аппаратное обеспечение.
Ускорение на GPU делает весь процесс оценки более удобным. Поэтому он может быть
использован как безопасный и недорогой инструментдля управления трубопроводами,
аэропортами и топографической съемкой.

ИМПЕРСКИЙ КОЛЛЕДЖ ЛОНДОНА ИСПОЛЬЗУЕТ
GPU ДЛЯ ДИАГНОСТИКИ ПОВРЕЖДЕНИЙ МОЗГА
Ушибы, столкновения и сильные удары приводят к черепно-мозговым травмам.
Чтобы помочь диагностировать повреждения самого сложного человеческого органа,
исследователи из Имперского колледжа Лондона применяют современные инструменты для
анализа изображений, в основе которых лежит использование GPU и технологий глубокого
обучения.
Вычислительные методы являются основой работы команды исследователей под
руководством Бена Глокера (Ben Glocker), преподавателя на факультете информационных
технологий в Имперском колледже. Используя обширные данные, полученные с помощью
медицинского сканирования, их система проводит автоматизированную оценку черепно-
мозговых трав головного мозга со скоростью, с которой не может сравниться ни одна другая
система.
Благодаря этой работе Глокер и его команда стали одними из пяти финалистов премии
NVIDIA Global Impact Award 2016. Ежегодная премия в $150000 вручается исследователям,
использующим технологии NVIDIA в принципиально новых проектах для решения социальных,
гуманитарных и экологических проблем.

Изображение поврежденного участка головного мозга.

CUDA АЛЬМАНАХ / МАЙ 2016                                                                   6
CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia
Изображение поврежденного участка головного мозга.

Быстрое реагирование
Каждый год миллионы людей получают черепно-мозговые травмы. И любая травма,
нарушающая нормальное функционирование головного мозга, может в дальнейшем
привести к умственным и эмоциональным проблемам, например, ослаблению когнитивных
способностей или депрессии.
Большое разнообразие подобных травм затрудняет их выявление и лечение. При оказании
срочной медицинской помощи особую важность играет скорость принятия решений. Глокер
узнал это на своем опыте во время работы водителем машины скорой помощи в Германии.
«Врачам необходимо понимать, что происходит с органами и головным мозгом. Они
принимают решения на основе диагностических изображений, полученных в отделении
скорой помощи, - объяснил Глокер. - Наши достижения в области вычислительных технологий
помогают им принимать более обоснованные решения».
Поиск соответствия фильтрам
Аспирант Константинос Камнитсас (Konstantinos Kamnitsas) и другие члены команды Глокера
разработали собственный метод анализа изображений. Они используют одну из наиболее
успешных техник глубокого обучения в области машинного зрения - сверточные нейронные
сети, в которых к изображению последовательно применяются тысячи фильтров.
Исследователи из Имперского колледжа применили этот GPU-ускоренный вычислительный
инструмент к медицинским 3D изображениям. Этот требующий большого объема вычислений
метод деления повреждений головного мозга на сегменты был разработан с помощью
библиотеки Python Theano, которая поддерживает CUDA-ускоренные вычисления
и использует современные технологии NVIDIA.

Срез мозга с поврежденными участками.

Расширение объема памяти на различных графических картах GeForce GTX позволило
команде экспериментировать с большими нейронными сетями. А развертывание
в исследовательской лаборатории кластера на основе 16 графических ускорителей NVIDIA
Tesla K80 обеспечило еще больший прирост производительности.
«GPU обеспечивают быструю и эффективную реализацию алгоритмов и имеют подходящую
архитектуру для подобного анализа изображений. Мы бы не справились без GPU, - рассказал
Глокер. - С помощью GPU анализ одного снимка головного мозга занимает две минуты.
Без GPU этот процесс может затянуться на часы».
Результатом работы команды Глокера стала система для автоматического определения
и деления на сегменты повреждений головного мозга, связанных с ЧМТ, которая
превосхoдит по производительности другие современные системы.
Результаты работы Глокера и его команды «способствуют изменению парадигмы
использования МРТ для диагностики и лечения черепно-мозговых травм», считает профессор
Дэвид Менон (David Menon), глава отделения анестезиологии в Кэмбриджском университете.
Команда выяснила, что их метод хорошо подходит для оценки состояния жертв инсульта
и пациентов с опухолью головного мозга. Он так же может быть использован для
визуализации сердца и внутриутробной диагностики.

CUDA АЛЬМАНАХ / МАЙ 2016                                                               7
CUDA АЛЬМАНАХ МАЙ 2016 - Nvidia
БОЛЬШЕ, ЧЕМ ВНЕШНЯЯ ПРИВЛЕКАТЕЛЬНОСТЬ:
GPU ПОМОГАЮТ БЕСПРИСТРАСТНО ОТСЛЕЖИВАТЬ
МОРЩИНЫ И ДРУГИЕ БИОМАРКЕРЫ СТАРЕНИЯ ЛИЦА
Красота скоротечна, однако это не тормозит развитие многомиллиардной индустрии средств
по уходу за кожей.
Теперь специалисты в области глубокого обучения помогают отслеживать морщины,
пигментные пятна и другие биомаркеры, свидетельствующие о состоянии здоровья кожи
человека, и определять эффективность средств по уходу.
«Как вы оцениваете состояние своей кожи, если большинство критериев оценки не
объективны?» - задал вопрос специалист по обработке и анализу данных Константин Киселев
(Konstantin Kiselev) во время своей презентации на конференции по GPU-технологиям.
Его компания Youth Laboratories, расположенная в Балтиморе, штат Мэриленд, стремится
усовершенствовать методы оценки эффективности средств по уходу за кожей и улучшения
состояния здоровья самого большого органа человеческого тела.
Первая работа его команды исследователей включала подготовку 300 тегированных
вручную изображений морщин. Тесты были проведены с помощью нейронной сети VGG
и системы SegNet для сегментации изображений на пиксели. Использование NVIDIA Tesla
K80 для тренировки нейронной сети и тестирования привело к 20-и кратному ускорению
по сравнению с CPU, по словам Киселева.
Затем команда разработала приложение для отслеживания состояния кожи лица под
названием RYNKL. Оно создает «карту морщинистости» разных зон лица: лба, щек,
области вокруг глаз и губ. Приложение анализирует каждую зону и рассчитывает индекс
морщинистости RYNKL.
Стандарты красоты от роботов
Чтобы популяризовать приложение (доступное в бета версии на Google Play
и в AppStore), команда разработала платформу для тестирования алгоритмов, оценивающих
привлекательность человеческого лица.
В начале этого года компания запустила Beauty.AI, первый онлайн конкурс красоты,
членами жюри которого являются роботы. Пользователи могут отправлять свои фотографии
для участия в конкурсе в своей возрастной категории через вебсайт. Проведение второго
конкурса планируется в мае.
Технические достижения в области компьютерного зрения, распознавания лиц и машинного
обучения позволили Киселеву и его команде определить биомаркеры состояния кожи лица
с использованием фото.
В конечном счете, они надеются разработать приложения, способные определять другие
биомаркеры старения и заболеваний кожи и предлагать персонализированные рекомендации
по уходу за лицом.

CUDA АЛЬМАНАХ / МАЙ 2016                                                                8
ТЕХНОЛОГИИ РАСПОЗНАВАНИЯ ЛИЦ НА ОСНОВЕ
GPU ПОМОГАЛИ ПОДАВАТЬ НАПИТКИ В БАРЕ
НА КОНФЕРЕНЦИИ GTC

Ни для кого не секрет, что нас везде окружают камеры. В банках и административных зданиях.
На вокзалах и складах. Прежде всего камеры записывают изображения человеческих лиц для
предотвращения преступлений.
На конференции по GPU-технологиям камеры записывали, как люди заказывали напитки.
Компания Herta Security разработала технологию распознавания лиц, которая лежит в основе
систем безопасности, расположенных по всему миру. Вместе со специалистами из NVIDIA она
создала уникальную демонстрационную площадку в баре с удачным названием YouBar для
конференции по GPU-технологиям.
Вот как это работает:
Вы подходите к стойке регистрации около YouBar, где система распознает ваше лицо,
и заказываете напиток. Затем вы подходите к YouBar в удобное для вас время. Ваше
лицо идентифицируется на мониторах за стойкой бара. Получивший информацию бармен
приветствует вас по имени и подает ваш любимый напиток.
Беглое тестирование дает основание полагать, что система работает. Не стоит и говорить,
что этот бар стал самым популярным местом для неформального общения на конференции.
Прежде чем вы начнете размышлять об открытии бара с системой распознавания лиц,
вам стоит узнать, что Herta не планирует выпускать на рынок эту конкретную реализацию
технологии. Генеральный директор Herta Хавьер Родригез Саета (Javier Rodriguez Saeta)
рассматривает YouBar скорее как интересный способ познакомить посетителей конференции
с этой технологией.

CUDA АЛЬМАНАХ / МАЙ 2016                                                                  9
Однако Саета заявил, что его компания рассматривает потенциальные рынки за пределами
своей традиционной сферы деятельности, связанной с системами безопасности и
обеспечением порядка.
Больше, чем просто лицо
Ранее в тот же день руководитель исследовательской группы YouBar Чарльз Фернандез
Тена (Carles Fernandez Tena) рассказал о том же во время доклада на конференции.
Он объяснил, что способность технологии распознавать лицо человека, идентифицировать
его пол и национальность, предполагать возраст и анализировать выражение лица
может иметь огромное значение для маркетологов, стремящихся предоставлять более
персонифицированные услуги.
Вот почему Herta использует технологии GPU для повышения скорости и точности
декодирования видео.
Тена рассказал, что декодирование на CPU является главным препятствием в достижении
необходимой скорости и точности. Поэтому компания экспериментирует на новой
встраиваемой платформе вычислений NVIDIA Jetson TX1.
В настоящий момент использование этой платформы сократило время декодирования на две
трети. Это также позволило Herta более эффективно применять процедуру, известную как
«фронтализация». С ее помощью изображения лиц, расположенные под наклоном, изменяют
положение таким образом, чтобы лицо человека смотрело прямо вперед.
Тена заявил, что точность декодирования увеличилась с 96 до 98 процентов, что,
по его словам, является огромным скачком, намного более значимым, чем можно было
бы предположить.
Естественно, что это подстегнуло интерес Herta к платформе Jetson TX1.
«Мы хотим перенести на TX1 выполнение всех задач», - заявил Тена.
Конечно, кроме приготовления коктейлей.

CUDA АЛЬМАНАХ / МАЙ 2016                                                               10
ВЕБИНАРЫ НА АНГЛИЙСКОМ ЯЗЫКЕ
Приглашаем вас на вводный вебинар по CUDA (на английском языке), который состоится
8 июня (9:00am – 10:00 am PST). Регистрация.

Последние записи на английском языке:

Free OpenACC Course

Real time, Low Latency Feature Tracking with ArrayFire

More Science, Less Programming with OpenACC

Deep Learning Courses

CUDA АЛЬМАНАХ / МАЙ 2016                                                             11
НАУЧНЫЕ РАБОТЫ С ИСПОЛЬЗОВАНИЕМ
ВЫЧИСЛЕНИЙ НА CUDA
ГЛУБОКОЕ ОБУЧЕНИЕ В ЗАДАЧАХ КЛАССИФИКАЦИИ ВРЕМЕННЫХ РЯДОВ
О. Ю. Бахтеев, М. С. Попова, В. В. Стрижов
Подробнее
Решается задача классификации временных рядов акселерометра мобильного телефона.
Строится сеть глубокого обучения. Структура сети — композиция ограниченной машины
Больцмана, автокодировщика и двухслойной нейросети. Анализируется зависимость
ошибки классификации от числа параметров и размера обучающей выборки. Работа
посвящена построению сети глубокого обучения и оптимизации ее параметров с помощью
вычислительных мощностей графического ускорителя на основе сервиса облачных
вычислений Amazon Web Services.
Эксперимент проведен с использованием Theano — библиотеки для вычислений языка
Python. Theano используется для построения моделей глубокого обучения, а также для
построения специализированных библиотек. Функции вычислений Theano компилируются,
что позволяет выполнять вычисления за приемлемое время. Другой отличительной
особенностью Theano является возможность применения графического процессора
с использованием архитектуры параллельных вычислений CUDA. В экспериментальном
режиме работает интерфейс OpenCL.
Постановка задачи. Пусть задана выборка

состоящая из множества пар объект – класс. Каждый объект χ принадлежит одному
из Z классов с меткой yi Є {1,…,Z}. Моделью классификации или сетью глубокого
обучения f назовем суперпозицию функций

де μk — модели; w — вектор параметров моделей; r-я компонента вектора f(w,x) —
вероятность отнесения объекта xi к классу с меткой r=y.
Требуется найти параметры модели, минимизируя функцию ошибки S на обучающей выборке,

где S — сумма отрицательных логарифмов правдоподобия выборки:

Сеть глубокого обучения состоит из трех основных компонент: ограниченной машины
Больцмана μ1, автокодировщика μ2 и двухслойной нейросети с softmax-классификатором μ3.
План запуска алгоритма. Для запуска алгоритма на сервере AWS требуется
зарегистрироваться на AWS, сконфигурировать экземпляр AWS (instance), скопировать код
и данные проекта на сервер и подключиться к серверу по протоколу SSH. После этого
требуется зайти в папку с проектом, запустить вычислительный эксперимент, скопировать
полученные результаты эксперимента на локальный компьютер и уничтожить экземпляр.
Вычислительный эксперимент. Выборка содержит записи движений для 6 классов
переменной длины по трем координатам акселерометра мобильного телефона.

CUDA АЛЬМАНАХ / МАЙ 2016                                                                12
Из каждой записи использовались первые 200 сегментов. Пример данных из выборки WISDM
приведен на рис. 1. Так как выборка не сбалансирована, в нее добавлялись повторы записей
классов, содержащих количество записей, меньшее чем у большего класса.

Рис. 1. Пример временных рядов из выборки WISDM, проекция на первую координату
(сидение и бег сдвинуты для наглядности).

Рис. 2. Зависимость ошибки от числа нейронов.
Для оценки зависимости качества классификации от размера обучающей выборки была
проведена кросс-валидация с фиксированным количеством объектов в обучающей выборке
(25% исходной выборки) и переменным размером обучающей выборки. Число нейронов было
установлено как 364:224:112. При проведении процедуры скользящего контроля для каждого
отсчета было произведено пять запусков. График зависимости ошибки классификации
от размера обучающей выборки представлен на рис. 3.

CUDA АЛЬМАНАХ / МАЙ 2016                                                              13
Рис. 3: Зависимость ошибки от размера обучающей выборки
Для исследования скорости работы процесса обучения нейросети в зависимости от
конфигурации Theano был сделан следующий эксперимент: проводилось обучение
двухслойной нейросети на основе подсчитанных заранее параметров ограниченной машины
Больцмана и автокодировщика. Обучение проходило за 100 итераций. При обучении алгоритм
запускался параллельно с n разными стартовыми позициями, n Є{1,…, 4}. Число нейронов
было установлено как 300:200:100. Запуск осуществлялся со следующими конфигурациями
Theano: вычисление на центральном процессоре, задействовано одно ядро; четыре
ядра; восемь ядер; вычисление на графическом процессоре. Результаты эксперимента
приведены на рис. 4. Как видно из графика, вычисление с использованием CUDA показывает
значительное ускорение по сравнению с вычислением на центральном процессоре.
Детальное описание структуры нейросети можно найти в статье Бахтеев О.Ю., Попова М.С.,
Стрижов В.В. Системы и средства глубокого обучения в задачах классификации // Системы
и средства информатики. — 2016. — № 2.

Рис. 4. Результаты эксперимента по исследованию скорости процесса обучения.

CUDA АЛЬМАНАХ / МАЙ 2016                                                            14
ИСПОЛЬЗОВАНИЕ ТЕХНОЛОГИИ NVIDIA CUDA ДЛЯ СОКРАЩЕНИЯ ВРЕМЕНИ ОБРАБОТКИ
ДАННЫХ С ИСПОЛЬЗОВАНИЕМ АЛГОРИТМА МАГМА
Ищукова Е.А., Богданов К.И.
Южный федеральный университет
Подробнее
В Росси с 1 января 2016 года в силу вступил новый криптографический стандарт ГОСТ Р
34.12-2015 “Информационная технология. Криптографическая защита информации. Блочные
шифры” [3]. В его состав вошли два алгоритма шифрования. Одним из них является бывший
стандарт шифрования ГОСТ 29147-89, для которого зафиксированы блоками замены. В новом
стандарте данный шифр фигурирует под названием Магма [4]. Магама представляет собой
симметричный блочный шифр с размером блока данных 64 бита, секретным ключом 256 бит
и 32 раундами шифрования. Подробнее о работе алгоритма шифрования Магма можно
прочесть в [1, 3].
В настоящей работе впервые представлены результаты по разработке и реализации
параллельных алгоритмов шифрования данных с использованием технологии Cuda, которые
будут использованы в дальнейшем для проведения экспериментов по оценке стойкости
шифра Магама с использованием различных методов криптоанализа. Cuda представляет
собой программно-аппаратную архитектуру, призванную увеличить производительность
вычислений при помощи использования графических процессоров NVIDIA. В основе ее
архитектуры лежит язык программирования С с небольшими видоизменениями [4]. Данная
технология применятся в тех случаях, когда есть необходимость в параллельномвыполнени
иодинаковых операций (вычислений). Не обошла стороной эта архитектура и криптографию.
CUDA и подобные ей GPGPU как ничто другое подходят для параллельного вычисления
в блочных шифрах [1, 4]. В данной статье мы рассмотрим применимость данной технологии
к криптографическому алгоритму Магма. Выбор данной технологии обусловлен большим
запасом вычислительной мощности, доступностью и относительной простотой реализации,
а также возможностью моделировать процесс в условиях лаборатории.
Тестирование реализованной программы производилось на видеокарте NVIDIA GTS
450, IntelCorei5 2400, 8 GbRAM. Для оценки эффективности разработанного алгоритма
предварительно проводились замеры на CPU IntelCorei5 3210M 8GbRAM без использования
параллельных вычислений. Шифрование 1 блока информации (64 бита) заняло меньше мсек,
когда как на видеокарте на это ушло 30-40 мсек. Для шифрования 1 мбита на процессоре
понадобилось порядка 40-50 мсек. На видеокарте результат аналогичен предыдущему – 37
мсек. Но на бОльших массивах данных (тест проводился на 100000 блоках = 6.4 мбит) расчет
на CPU составил 868мсек, когда на GPU шифрование этих же данных заняло около 40 мсек.
Результаты экспериментов для GPU-блоков получились аналогичными вычислениям
на потоках. Шифрование на 25 блоках и 625 потоках заняло время, равное шифрованию
на 1 блоке и 15625 потоках, что закономерно.
С более подробными результатами можно ознакомиться в работах [9, 10].
Работа выполнена при поддержке гранта РФФИ № 15-37-20007-мол-а-вед.

CUDA АЛЬМАНАХ / МАЙ 2016                                                               15
Библиографический список
1.   Бабенко Л.К. Ищукова Е.А. Сидоров И.Д. Параллельные алгоритмы для решения задач
     защиты информации. - М.: Горячая линия Телеком, 2014. - 304 с.
2.   Бабенко Л.К., Ищукова Е.А., Сидоров И.Д. ПРИМЕНЕНИЕ ПАРАЛЛЕЛЬНЫХ
     ВЫЧИСЛЕНИЙ ПРИ РЕШЕНИИ ЗАДАЧ ЗАЩИТЫ ИНФОРМАЦИИ // Программные
     системы: теория и приложения. 2013. Т. 4. № 3-1 (17). С. 25-42.
3.   Криптографическая защита информации Блочные шифры // https://www.tc26.ru/standard/
     gost/GOST_R_3412-2015.pdf
4.   Параллельные вычисления Cuda | Что такое Cuda | NVIDIA. [Электронный ресурс] URL:
     http://www.nvidia.ru/object/cuda-parallel-computing-ru.html Дата обращения: 15.10.2015
5.   Примеры использования CUDA. [Электронный ресурс] URL: http://sporgalka.blogspot.
     ru/2011/10/cuda.html Дата обращения: 16.10.2015
6.   Что такое вычисления с GPU-ускорением? [Электронный ресурс] URL: http://www.nvidia.
     ru/object/gpu-computing-ru.html Дата обращения: 18.10.2015
7.   NVidia 8800GTX: пропускная способность памяти (при использовании CUDA) [Электронный
     ресурс] URL: http://www.gpgpu.ru/articles/ nvidia_8800gtx_propusknaja_sposobnost__
     pamjati_pri.html Дата обращения 22.10.2015
8.   Cuda: аспекты производительности при решении задач. [Электронный ресурс] URL: http://
     habrahabr.ru/post/119435/ Дата обращения: 18.10.2015
9.   Ищукова Е.А., Богданов К.И. Реализация алгоритма шифрования Магма с
     использованием технологии NVIDIA CUDA // Международный журнал прикладных и
     фундаментальных исследований - Издательский дом “Академия Естествознания”. -
     №12(5). -2015. – С. 789 – 793.
10. Ищукова Е.А., Бабенко Л.К., Богданов К.И. Слайдовая атака на криптографический
    алгоритм Магма и ее реализация с использованием технологии параллельного
    вычисления NVIDIA CUDA // Научный журнал «Современные наукоемкие технологии». -
    Издательский Дом «Академия Естествознания». - №1(1). – 2016. – С. 25 – 29.

CUDA АЛЬМАНАХ / МАЙ 2016                                                                      16
ПОЛЕЗНЫЕ РЕСУРСЫ ПО CUDA
Группа вконтакте: www.vk.com/nvidiacuda

Новый каталог с более 400 приложениями, ускоряемыми на GPU можно скачать по ссылке.

Материалы GPU Technology Conference 2015 доступны по ссылке

Форум Разработчиков NVIDIA
присоединяйтесь к Форуму CUDA-разработчиков, делитесь своим опытом и узнавайте
много нового. http://devtalk.nvidia.com/

Документация по CUDA
Со списком документации по CUDA можно ознакомиться здесь.

Обучение онлайн
Udacity | Coursera | Курс на русском языке

Библиотеки с поддержкой GPU ускорения
Список библиотек с поддержкой GPU ускорения от NVIDIA и партнеров.

GPU Тест-Драйв
Хотите бесплатно протестировать Tesla? Зарегистрируйтесь здесь.

Ускоряйте научные приложения с OpenACC
Протестируйте компилятор PGI OpenACC бесплатно в течение месяца. Подробнее.

Книги, посвященные CUDA и вычислениям на GPU
Со списком книг, посвященных CUDA и вычислениям на GPU, можно ознакомиться здесь.

Скачайте
CUDA http://developer.nvidia.com/cuda-downloads
Nsight http://www.nvidia.com/object/nsight.html

CUDA АЛЬМАНАХ / МАЙ 2016                                                            17
КОНТАКТЫ

 Если   вы   хотите,   чтобы   ваша   статья
                                                 Лидия Андреева
 появилась в следующем выпуске
                                               landreeva@nvidia.com
 CUDA Альманах пишите нам на:

 По вопросам приобретения NVIDIA GPU и           Антон Джораев
 по прочим техническим                         adzhoraev@nvidia.com
 вопросам пишите нам на:

CUDA АЛЬМАНАХ / МАЙ 2016                                              18
Вы также можете почитать