GPZ: инновационный GPU-ускоренный компрессор для больших объёмов данных о частицах

Моделирование на основе частиц и приложения с точечными облаками приводят к значительному увеличению размеров и сложности научных и коммерческих наборов данных, часто достигающих миллиардов или триллионов отдельных точек. Эффективное сокращение, хранение и анализ этих данных без замедления современных графических процессоров (GPU) — одна из актуальных задач в таких областях, как космология, геология, молекулярная динамика и трёхмерная визуализация.

Недавно группа исследователей из Университета штата Флорида, Университета Айовы, Аргоннской национальной лаборатории, Чикагского университета и ряда других учреждений представила GPZ — оптимизированный под GPU компрессор с ограниченной потерей данных, который радикально улучшает пропускную способность, степень сжатия и точность данных для информации о частицах, превосходя по производительности пять современных аналогов.

Почему важно сжимать данные о частицах и почему это так сложно?

Данные о частицах (или точечные облака) представляют системы в виде нерегулярных коллекций отдельных элементов в многомерном пространстве. В отличие от структурированных сеток, этот формат имеет низкую пространственную и временную согласованность и почти не содержит избыточности, что делает его кошмаром для классических компрессоров без потерь или универсальных компрессоров с потерями.

Примеры:
* Суперкомпьютер Summit сгенерировал один снимок космологического моделирования объёмом 70 ТБ с использованием Nvidia V100 GPU.
* Объём данных в облаках точек программы USGS 3D Elevation Program, представляющих топографию США, превышает 200 ТБ.

Традиционные подходы, такие как понижение дискретизации или обработка данных «на лету», приводят к потере до 90% исходных данных или исключают возможность воспроизведения из-за нехватки места для хранения. Более того, универсальные компрессоры, ориентированные на сетки, используют корреляции, которых просто не существует в данных о частицах, что приводит к низким коэффициентам сжатия и низкой производительности GPU.

Архитектура и инновации GPZ

GPZ оснащён четырёхступенчатым параллельным конвейером GPU, специально разработанным для особенностей данных о частицах и строгих требований современного массово-параллельного оборудования.

Этапы конвейера:
1. Пространственная квантизация. Позиции частиц с плавающей запятой преобразуются в целочисленные идентификаторы сегментов и смещения, соблюдая заданные пользователем границы погрешности и используя быстрые операции FP32 для максимальной арифметической производительности GPU.
2. Пространственная сортировка. В пределах каждого блока (отображаемого в CUDA warp) частицы сортируются по идентификатору сегмента для улучшения последующего кодирования без потерь — с использованием операций на уровне warp, чтобы избежать дорогостоящей синхронизации.
3. Кодирование без потерь. Инновационное параллельное кодирование длин серий и дельта-кодирование удаляют избыточность из отсортированных идентификаторов сегментов и квантованных смещений. Кодирование битовых плоскостей устраняет нулевые биты, при этом все этапы оптимизированы для шаблонов доступа к памяти GPU.
4. Уплотнение. Сжатые блоки эффективно собираются в непрерывный вывод с помощью трёхступенчатой стратегии на уровне устройства, которая сокращает накладные расходы на синхронизацию и максимизирует пропускную способность памяти (809 ГБ/с на RTX 4090, около теоретического пика).

Распаковка — это обратный процесс: извлечение, декодирование и восстановление позиций в пределах заданных границ погрешности, что обеспечивает высококачественный пост-хок-анализ.

Оптимизация производительности с учётом аппаратного обеспечения

GPZ отличается набором аппаратно-ориентированных оптимизаций:
* Объединение памяти. Операции чтения и записи тщательно выровнены по 4-байтовым границам, что максимизирует пропускную способность DRAM (до 1,6-кратного улучшения по сравнению с последовательным доступом).
* Управление регистровой и общей памятью. Алгоритмы разработаны так, чтобы поддерживать высокую занятость. Точность снижается до FP32, где это возможно, и избегается чрезмерное использование регистров, чтобы предотвратить разливы.
* Планирование вычислений. Используется сопоставление один-варп-на-блок, явное использование встроенных функций CUDA, таких как операции FMA, и развёртывание циклов там, где это полезно.
* Устранение деления/модуля. Замена медленных операций деления/модуля предварительно вычисленными обратными величинами и битовыми масками, где это возможно.

Тестирование: GPZ против современных решений

GPZ был протестирован на шести реальных наборах данных (из космологии, геологии, физики плазмы и молекулярной динамики), охватывающих три архитектуры GPU:
* потребительская: RTX 4090;
* для центров обработки данных: H100 SXM;
* периферийная: Nvidia L4.

Результаты:
* Скорость: GPZ обеспечил пропускную способность сжатия до 8 раз выше, чем у следующего по производительности конкурента. Средняя пропускная способность достигла 169 ГБ/с (L4), 598 ГБ/с (RTX 4090) и 616 ГБ/с (H100). Декомпрессия масштабируется ещё выше.
* Коэффициент сжатия: GPZ последовательно превосходил все базовые алгоритмы, обеспечивая коэффициенты сжатия, в 600% выше в сложных условиях. Даже когда конкуренты незначительно опережали GPZ, он сохранял преимущество в скорости в 3–6 раз.
* Качество данных: графики скорости искажения подтвердили превосходное сохранение научных характеристик (более высокий PSNR при более низких битрейтах), а визуальный осмотр (особенно при 10-кратном увеличении) показал, что реконструкции GPZ были почти неотличимы от оригиналов, тогда как другие сжатия создавали видимые артефакты.

Ключевые выводы и последствия

GPZ устанавливает новый золотой стандарт для сокращения больших объёмов данных о частицах в реальном времени на современных GPU. Его конструкция учитывает фундаментальные ограничения универсальных компрессоров и предлагает индивидуальные решения, использующие все возможности GPU-параллелизма и настройки точности.

Для исследователей и практиков, работающих с огромными научными наборами данных, GPZ предлагает:
* надёжное сжатие с ограниченной потерей данных, подходящее для анализа на месте и после него;
* практическую пропускную способность и коэффициенты сжатия на потребительском и HPC-классе оборудования;
* почти идеальное восстановление для последующих задач аналитики, визуализации и моделирования.

По мере масштабирования объёмов данных решения, подобные GPZ, будут всё больше определять следующую эру научных вычислений, ориентированных на GPU, и управления большими объёмами данных.

1. Какие проблемы решает GPZ при работе с данными о частицах?

Ответ: GPZ решает проблему сжатия больших объёмов данных о частицах без значительной потери информации. Это особенно важно в таких областях, как космология, геология, молекулярная динамика и трёхмерная визуализация, где данные могут достигать миллиардов или триллионов отдельных точек.

2. Какие этапы включает в себя конвейер GPZ?

Ответ: Конвейер GPZ включает в себя четыре этапа: пространственную квантизацию, пространственную сортировку, кодирование без потерь и уплотнение. Эти этапы специально разработаны для особенностей данных о частицах и строгих требований современного массово-параллельного оборудования.

3. Какие аппаратно-ориентированные оптимизации используются в GPZ?

Ответ: В GPZ используются следующие аппаратно-ориентированные оптимизации: объединение памяти, управление регистровой и общей памятью, планирование вычислений и устранение деления/модуля. Эти оптимизации помогают максимизировать производительность GPU и эффективность сжатия данных.

4. Как GPZ сравнивается с современными решениями по скорости и коэффициенту сжатия?

Ответ: GPZ обеспечивает пропускную способность сжатия до 8 раз выше, чем у следующего по производительности конкурента. Средняя пропускная способность достигла 169 ГБ/с (L4), 598 ГБ/с (RTX 4090) и 616 ГБ/с (H100). Коэффициент сжатия GPZ последовательно превосходит все базовые алгоритмы, обеспечивая коэффициенты сжатия в 600% выше в сложных условиях.

5. Какие преимущества предлагает GPZ для исследователей и практиков, работающих с огромными научными наборами данных?

Ответ: GPZ предлагает исследователям и практикам надёжное сжатие с ограниченной потерей данных, подходящую для анализа на месте и после него. Он также обеспечивает практическую пропускную способность и коэффициенты сжатия на потребительском и HPC-классе оборудования, а также почти идеальное восстановление для последующих задач аналитики, визуализации и моделирования.

Источник