Научная статья на тему 'Технологии обработки данных дистанционного зондирования Земли на гибридном кластере нкс-30т+GPU'

Технологии обработки данных дистанционного зондирования Земли на гибридном кластере нкс-30т+GPU Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
179
26
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДИСТАНЦИОННОЕ ЗОНДИРОВАНИЕ / ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ ОБРАБОТКА / РАСПРЕДЕЛЕННАЯ ОБРАБОТКА / ВЫЧИСЛЕНИЯ НА GPU / REMOTE SENSING / HIGH-PERFORMANCE PROCESSING / DISTRIBUTED PROCESSING / GPU COMPUTATIONS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Русин Евгений Владимирович

Предлагается подход к созданию высокопроизводительных технологий обработки данных дистанционного зондирования Земли на вычислительных кластерах с GPU, реализованный и апробированный на гибридном кластере НКС-30Т+GPU Сибирского суперкомпьютерного центра. Обсуждаются некоторые аспекты реализации подхода и результаты экспериментов.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Русин Евгений Владимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

TECHNOLOGIES FOR THE PROCESSING OF EARTH REMOTE SENSING DATA ON NKS-30T+GPU HYBRID CLUSTER

An approach is proposed for the creation of high-performance technologies for the processing of Earth remote sensing data on computer clusters with GPU. The approach is implemented and tested on NKS-30T+GPU hybrid cluster, Siberian Supercomputer Center. Some aspects of the implementation of the approach and the results of experiments are discussed.

Текст научной работы на тему «Технологии обработки данных дистанционного зондирования Земли на гибридном кластере нкс-30т+GPU»

УДК 004.75:004.932

ТЕХНОЛОГИИ ОБРАБОТКИ ДАННЫХ ДИСТАНЦИОННОГО ЗОНДИРОВАНИЯ ЗЕМЛИ НА ГИБРИДНОМ КЛАСТЕРЕ НКС-ЗОТ+GPU

Евгений Владимирович Русин

Институт вычислительной математики и математической геофизики СО РАН, 630090, Россия, г. Новосибирск, пр. Академика Лаврентьева, 6, кандидат технических наук, старший научный сотрудник, тел. (383)330-73-32, e-mail rev@ooi.sscc.ru

Предлагается подход к созданию высокопроизводительных технологий обработки данных дистанционного зондирования Земли на вычислительных кластерах с GPU, реализованный и апробированный на гибридном кластере НКС-ЗОТ+GPU Сибирского суперкомпьютерного центра. Обсуждаются некоторые аспекты реализации подхода и результаты экспериментов.

Ключевые слова: дистанционное зондирование, высокопроизводительная обработка, распределенная обработка, вычисления на GPU.

TECHNOLOGIES FOR THE PROCESSING OF EARTH REMOTE SENSING DATA ON NKS-30T+GPU HYBRID CLUSTER

Evgeny V. Rusin

Institute of Computational Mathematics and Mathematical Geophysics SB RAS, 630090, Russia, Novosibirsk, prospect Akademika Lavrentjeva, 6, Ph. D., senior scientific researcher, tel. (383)330-73-32, e-mail: rev@ooi.sscc.ru

An approach is proposed for the creation of high-performance technologies for the processing of Earth remote sensing data on computer clusters with GPU. The approach is implemented and tested on NKS-30T+GPU hybrid cluster, Siberian Supercomputer Center. Some aspects of the implementation of the approach and the results of experiments are discussed.

Key words: remote sensing, high-performance processing, distributed processing, GPU computations.

Введение

Гигантские объемы данных ДЗЗ, трудоемкость обрабатывающих их алгоритмов и потребность интерпретации данных ДЗЗ в реальном времени влекут необходимость привлечения к обработке спутниковых данных высокопроизводительных ЭВМ [1]. В последнее десятилетие появился большой практический интерес к использованию современных графических процессоров (Graphics Processing Unit, GPU) в качестве универсального вычислителя. Вообще говоря, GPU ориентирован на эффективное решение задач машинной графики, в частности он содержит аппаратные функции, позволяющие эффективно (с производительностью до нескольких ТФлопс) выполнять массовые вычисления (однотипные операции над большим объемом данных). Эти возможности позволяют использовать GPU в задачах, не связанных с визуализацией, но также опирающихся на массовые вычисления, например, в задачах обработки и анализа изо-

бражений. На ряде практических задач вычисления на GPU обеспечили ускорение расчетов на два порядка по сравнению с вычислениями на центральном процессоре, что соответствует результатам, получаемым на суперЭВМ. Концепция универсальных вычислений на GPU получила поддержку производителей графических ускорителей (технологии CUDA от NVIDIA, FireStream от AMD), что делает доступным написание программ, использующих GPU, на языке высокого уровня без знаний архитектуры сопроцессора. Высокая производительность современных GPU, их относительно небольшая стоимость и появление технологий, упрощающих их программирование, делают популярным построение гибридных кластеров, в которых традиционные вычислительные узлы дополнительно оснащаются одним или несколькими графическими ускорителями. Создание программного обеспечения для таких вычислительных систем является сегодня актуальной научной задачей. В настоящей работе рассматривается подход к реализации технологий высокопроизводительной обработки данных ДЗЗ на гибридном кластере НКС-ЗОТ+GPU Сибирского суперкомпьютерного центра (ССКЦ).

Кластер НКС-ЗОТ+GPU

Техническое описание гибридного кластера НКС-ЗОТ+GPU ССКЦ можно найти в [2]. Для целей нашей работы достаточно отметить, что в его состав входят 40 серверов SL390s G7, каждый из которых имеет:

• два 6-ядерных CPU Xeon Х5670 (2,93 ГГц),

• 96 Гбайт ОЗУ,

• три GPU NVIDIA Tesla M 2090 на архитектуре Fermi (compute capability 2.0), с 512 ядрами, 6 Гбайт памяти GDDR5.

Общая пиковая производительность серверов - 85 Тфлопс.

Система SSCCIP и библиотека SSCC-PIPL

Рассматриваемые технологии реализованы как расширения созданной ранее автором системы SSCCIP (Siberian Scientific Computing Center - Image Processing), интегрирующей удаленную многопроцессорную ЭВМ в процессы обработки и анализа данных ДЗЗ [3]. Концептуально система представляет собой рабочее место оператора, функционирующее в окружении операционной системы MS Windows и обеспечивающее выполнение операций обработки данных ДЗЗ. Сама обработка при этом выполняется на удаленной суперЭВМ, а ЭВМ оператора фактически выполняет функции управления вычислениями и визуализации результатов. Архитектурно система SSCCIP состоит из:

Клиентской компоненты, функционирующей на ЭВМ оператора и управляемой оператором.

• Серверной компоненты, функционирующей на удаленной многопроцессорной ЭВМ и выполняющей непосредственно вычисления. Важной ее частью является разработанная автором библиотека обработки изображений на много-

процессорной ЭВМ SSCC-PIPL (Siberian Scientific Computing Center - Parallel Image Processing Library) [4].

• Коммуникационной компоненты, связывающей клиентскую и серверную компоненты защищенным SSH-каналом.

Система реализована на языке C++, межузловой обмен на многопроцессорной ЭВМ выполняется с помощью коммуникационной библиотеки MPI. Важным принципом, использованным при создании системы, являлась легкость добавления («погружения») в нее новых технологий обработки. Следуя этому принципу, при разработке всех компонент системы автор придерживался идеологии технологического каркаса (framework), при которой операции, общие для всех или достаточно большой группы технологий, реализуются кодом системы, а операции, специфичные для каждой технологии, реализуются отдельно при погружении очередной технологии.

Добавление в систему SSCCIP операций GPU

Изменения системы SSCCIP, связанные с введением в нее вычислений на GPU, затрагивают только серверную компоненту и библиотеку SSCC-PIPL:

• Ядро библиотеки SSCC-PIPL расширено шаблонами выполнения на GPU типовых операций над изображениями: операций типа «пиксель-пиксель» (например, сложение двух изображений), «окрестность-пиксель» (различные свертки), «всё изображение-константа» (вычисление суммы пикселей), и т.д. Каждый шаблон типовой операции содержит код, общий для всех операций данного типа (загрузка изображений в память GPU и обратно, загрузка параметров обработки в память GPU, выполнение вычислительного ядра CUDA, итерирование по пикселям изображений, манипуляции с окрестностями пикселей, получение и задание значений отдельных пикселей и пр.), и вызовы кода, специфичного для конкретных алгоритмов (сериализация параметров алгоритма в блок памяти и выполнение элементарной операции обработки над отдельным пикселем). Таким образом, для погружения нового алгоритма обработки в систему необходимо реализовать только код, специфичный для этого алгоритма. Шаблоны операций предоставляют различные варианты реализации типовых операций:

o Размещение исходного изображения в глобальной (одномерный и двумерный вариант) и текстурной памяти GPU;

o Одномерное и двумерное размещение результирующего изображения в глобальной памяти GPU;

o Размещение параметров обработки в глобальной и константной памяти GPU;

o Синхронное и асинхронное выполнение операций CUDA.

При этом поддерживаются все способы представления изображения на наборе вычислительных узлов SSCC-PIPL (полное изображение на каждом узле, разрезание на непересекающиеся полосы, разрезание на полосы с перекрытием). Важно отметить, что все операции, связанные с межузловым обменом

и GPU, реализованы в ядре SSCC-PIPL, а особенности конкретного алгоритма реализуются в терминах обработки изображений (манипуляции с окрестностью и пр.). Данный факт существенно упрощает трудоемкий процесс реализации и отладки параллельных программ на суперЭВМ.

• Серверная компонента системы SSCCIP расширена возможностью использования GPU-операций SSCC-PIPL.

Результаты

Эксперименты, выполненные на кластере НКС-ЗОТ+GPU, показывают,

что:

• Привлечение GPU существенно увеличивает производительность вычислений. Так, GPU-реализация алгоритма поиска кольцевых структур на аэро-космоснимках [5] выполняется в 70-100 раз (в зависимости от размеров изображения) быстрее аналогичной реализации на центральном процессоре.

• Повышение уровня абстракции модели вычислений (шаблоны типовых операций, параметризуемые относительно высокоуровневым кодом конкретных алгоритмов) значимо не ухудшает производительность создаваемых реализаций. Так, упомянутая выше GPU-реализация алгоритма поиска кольцевых структур с помощью библиотеки уступает по производительности лишь на 1-2 % низкоуровневой реализации с помощью прямого вызова подпрограмм CUDA. При этом значительно упростился процесс создания программы для GPU.

Работа выполнена частично при поддержке РФФИ (грант № 16-07-00066) и программы 1.33П фундаментальных исследований Президиума РАН (проект № 0315-2015-0012).

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Бучнев А.А., Пяткин В.П., Русин Е.В. Распределенная высокопроизводительная обработка данных дистанционного зондирования Земли // Исследование Земли из космоса -2007. - № 4. - С. 34-38.

2. Гибридный кластер: HKC-30T+GPU, http://www2.sscc.ru/HKC-30T/HKC-30T.htm

3. Rusin E.V. Technology of High Performance Image Processing on Multiprocessor Computer // Pattern Recognition and Image Analysis. - 2012. - Vol. 22, No. 3. - P. 470-472.

4. Rusin E.V. An object-oriented library of parallel image processing // Pattern Recognition and Image Analysis. - 2009. - Vol. 19, No. 3. - P. 559-561.

5. Alekseev A.S, Pyatkin V.P., Salov G.I. Crater Detection in Aero-space Imagery Using Simple Nonparametric Statistical Tests // Lecture Notes in Computer Science. - Springer-Verlag, 1993. - Vol. 179. - P. 793-799.

© Е. В. Русин, 2016

i Надоели баннеры? Вы всегда можете отключить рекламу.