Быстрый запуск распределенного RAPIDS на облачном графическом процессоре в Hyperplane

Подпишитесь на наш предстоящий вебинар 16 февраля 2022 г.! У нас есть спикеры из NVIDIA, Oracle и Shakudo, которые технически подробно рассказывают о том, как масштабировать машинное обучение от использования ЦП до мульти-ГП.

«На нашем последнем вебинаре команда Shakudo и NVIDIA RAPIDS собралась вместе, чтобы продемонстрировать, как RAPIDS на Hyperplane может ускорить и масштабировать огромные объемы геопространственных данных. Стелла Ву, наш руководитель отдела машинного обучения, и Натан Стивенс из NVIDIA, старший менеджер по связям с разработчиками RAPIDS, рассказывают, как использовать RAPIDS на Hyperplane.

Специалисты по данным, работающие в различных отраслях, сталкиваются с одинаковыми проблемами, включая подготовку данных, управление различными источниками данных и эффективное сотрудничество с инженерами и другими членами команды.

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

Но даже если данные обрабатываются медленнее, чем можно было бы ожидать, так ли это важно?

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

Hyperplane — это наше решение, помогающее специалистам по обработке и анализу данных мобилизовать и масштабировать идеи, время от времени достигая показателей ускорения в 10 000 раз.

Псс! 16 февраля у нас запланирован еще один вебинар: Масштабирование машинного обучения с помощью RAPIDS с несколькими графическими процессорами. Узнайте больше и зарегистрируйтесь здесь.

ЧТО ТАКОЕ ГИПЕРПЛАН?

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

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

Hyperplane интегрирует все инструменты, которые знают и любят специалисты по данным, поэтому специалисты по данным и разработчики могут сосредоточиться на — на чем?! — развивается!

Нет ограничений на тип ввода или объем данных, с которыми вы работаете — все, что вам нужно сделать, это начать кодирование.

С помощью коротких и удобных строк кода Hyperplane предоставляет пользователям доступ к нескольким графическим процессорам для перехода от небольших данных к ETL петабайтного масштаба.

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

Теперь обработка огромных объемов геопространственных данных за короткий промежуток времени со скоростью, превышающей 10 000x, не только возможна, но и может выполняться на удобной для пользователя платформе.

ЧТО ТАКОЕ RAPIDS?

RAPIDS — это набор библиотек с открытым исходным кодом. Эти библиотеки помогают специалистам по данным с рабочими процессами и конвейерами, такими как подготовка данных, аналитика и визуализация.

Преимущества использования RAPIDS в Hyperplane

  • RAPIDS API масштабируется на несколько GPU, поэтому сочетание нескольких узлов и нескольких GPU обеспечивает невероятную скорость без изменения кода.
  • Данные не ограничиваются размером вашего графического процессора, поскольку вы можете масштабировать как между узлами, так и графическими процессорами внутри этих узлов.
  • Предварительно настроенная среда с последними пакетами RAPIDS и GPU, чтобы вы могли сразу приступить к разработке
  • Никаких задержек в отправке в производство: больше, чем просто площадка для экспериментов. После разработки и тестирования вы можете сразу развернуть и обслуживать свою модель, зафиксировав ее в своем любимом репозитории git.

Использование RAPIDS с cuDF

Традиционная аналитика обычно выполняется на ЦП, но этот тип процессора имеет ограничения.

Архитектурно ЦП состоит всего из нескольких ядер с большим объемом кэш-памяти, которые могут обрабатывать несколько программных потоков одновременно. Напротив, GPU состоит из сотен ядер, которые могут одновременно обрабатывать тысячи потоков.

Чтобы справиться с этими проблемами, мы можем заменить ЦП графическим процессором. Переход с ЦП на ГП означает необходимость рефакторинга кода, но с RAPIDS это сделать намного проще.

Запуск вашего кода

Одним из основных преимуществ использования RAPIDS на Hyperplane является то, насколько легко переключаться между pandas и cuDF.

CuDF — это библиотека Python GPU DataFrame для загрузки, объединения, агрегирования, фильтрации и управления данными.

Обе эти библиотеки будут выглядеть одинаково для изучения данных. Все может выглядеть дублированным, а API в основном одинаковым, поэтому в результате у пользователя не возникнет проблем с переводом.

Есть еще некоторые заметные различия при подготовке данных между cuDF и pandas. Например, как разделить столбцы. В наборе данных фильмов категории были разделены вертикальными чертами. Чтобы организовать информацию в разные столбцы, с пандами вы можете использовать одну команду и префикс «добавить».

С cuDA опция префикса недоступна, поэтому для получения того же результата необходимы дополнительные шаги.

С другой стороны, вы можете заметить, что в pandas есть шаг конкатенации, но для cuDF такое же действие не требуется — вы можете получить те же результаты с помощью одной команды, а не двух.

Существуют некоторые незначительные различия при использовании каждой библиотеки. Хотя не все болевые точки между двумя библиотеками были устранены, команда RAPIDS стремилась сделать рефакторинг вашего кода немного менее сложным.

Агрегация и масштабирование

Общим узким местом для специалистов по данным является скорость, с которой данные могут быть агрегированы.

К счастью, переключение с ЦП на ГП может привести к значительному приросту производительности. Сделав этот переход, пользователь может добиться двузначных темпов роста при агрегировании данных.

Быстрое исследование 6 миллионов записей данных обрабатывается на одном узле графического процессора в одной линейной модели между pandas и cuDF.

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

CuDF намного превзошел скорость pandas — агрегация данных была завершена всего за 0,08 секунды.

Процессы ETL на больших и сложных наборах данных могут значительно ускориться — в некоторых случаях в 10 или 20 раз на одном узле GPU, и коэффициенты масштабирования сохраняются.

Использование RAPIDS с cuSpatial

CuSpatial — это библиотека RAPIDS, созданная специально для управления большими данными ГИС. У него есть ускорители, так что можно выполнять обычные геопространственные вычисления с ускорением от 10 до 10 000 раз, в зависимости от того, какая операция.

CuSpatial поддерживает все типы ввода данных, такие как CSV или Parquet.

В примере с несколькими графическими процессорами данные желтого такси Нью-Йорка из CSV-файла считываются с помощью dask_cudf. Также используется Dask в удаленном кластере Dask, поэтому он может обрабатывать данные, объем которых превышает размер памяти.

Кроме того, cuSpatial имеет функцию вычисления расстояния по синусоиде, которая позволяет пользователю рассчитать расстояние между двумя точками на поверхности земного шара.

К фрейму данных Dask можно применить раздел карты любой функции. Это особенно ценно для ученых, занимающихся геопространственными данными, которые хотят выполнять расчеты расстояния между точками, такие как гаверсинус на большом фрейме данных. Это будет выполнено намного быстрее и параллельно. Более того, по сравнению с пандами, Dask может обрабатывать данные больше, чем память.

Используя одну строку кода из пакета Hyperplane, пользователи могут запустить распределенный кластер Dask на графических процессорах, что еще больше ускоряет ускорение по сравнению с локальными кластерами Dask.

Всего одна строка кода! Дополнительные графические процессоры = дополнительная скорость.

Как и в случае с импульсом, с большими наборами данных вы можете получить больший прирост скорости без каких-либо проблем с памятью.

Автоматизация стала проще

Используя сеансы в Hyperplane, вы можете автоматизировать задания. Легко планируйте свой код и запускайте его, когда захотите.

Файл YAML может помочь в этом процессе.

YAML — это рецепт для ваших конвейерных заданий, поэтому вы можете перечислить и просмотреть все свои задачи в одном меню. Файл YAML может смешивать и сопоставлять любой исполняемый скрипт.

Путь к записной книжке является ключевым фактором при выполнении автоматизированного кода. Пользователь может скопировать путь к Jupyter Notebook и добавить его в файл YAML.

Просто зафиксируйте конвейер YAML и шаги скриптов в репозиторий Github.

Как только все зафиксировано, оно автоматически подхватывается платформой, и вы можете запускать задания или запланированные задания, чтобы автоматизировать эту задачу и, по сути, развернуть ее в рабочей среде.

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

Если модель или трафик большие, пользователи могут увеличить скорость, настроив сервисы с сервером NVIDIA Triton, который полностью интегрирован с Hyperplane.

Легко начинать новую работу

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

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

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

Когда вы создаете задание, GraphQL API создается автоматически. Этот API является общим для беспрепятственного взаимодействия с инженерными группами для запуска заданий из других конвейеров.

Для согласованности входящих данных пользователь может создавать пакетные задания, используя почти тот же процесс, только с назначением по расписанию.

Используя Hyperplane, специалисты по данным могут писать код, развертывать код, выполнять отладку в реальном времени и получать результаты, наблюдая за тем, как модели работают в производственной среде, на реальных производственных данных.

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

ПОСМОТРЕТЬ ВЕБИНАР И ДОСТУП К РЕСУРСАМ

Смотрите наш вебинар от 16 декабря

Получите доступ к нашей презентации слайдов и демонстрационному блокноту GitRepo

ПРЕДСТОЯЩИЙ ВЕБИНАР

16 февраля 2022 г.: Масштабирование с помощью нескольких GPU RAPIDS

ЧТО ЖДУТ СЯКУДО

У нас есть несколько ключевых целей, когда мы смотрим в будущее:

  1. Сделайте платформу максимально простой, добавляя соответствующие фреймворки по мере их появления в отрасли (подсказка: мы уже внедрили Dask-SQL, следите за обновлениями).
  2. Твердый UI/UX, достигаемый за счет добавления дополнительных средств автоматизации, оповещений и других возможностей, чтобы команда специалистов по обработке и анализу данных могла самостоятельно пройти весь путь от начала до конца.

Мы являемся интегратором, верящим в экспоненциальную силу объединения лучших инструментов на рынке. Мы хотим, чтобы вы сэкономили на производстве и легко ускорили развертывание.

СВЯЗАТЬСЯ С НАМИ

Стелла Ву — руководитель отдела машинного обучения, Сякудо

Стелла — исследователь машинного обучения, имеющий опыт разработки моделей ИИ для реальных приложений. Стелла создала модели машинного обучения для обработки естественного языка, прогнозирования временных рядов, самоконтролируемого обучения, системы рекомендаций и обработки изображений в BMO, Borealis AI и нескольких стартапах. Стелла имеет докторскую степень в области геофизического моделирования Университета Мюнстера в Германии.

"Веб-сайт"

"Середина"