Бенчмарки производительности для Jetson Nano, TX1, TX2, AGX Xavier
Бенчмарки производительности для Jetson Nano, TX1, TX2, AGX Xavier
Компания NVIDIA выпустила серию аппаратных модулей Jetson для встраиваемых приложений. NVIDIA ® Jetson-это ведущая в мире встраиваемая платформа для обработки изображений и задач DL/AI. Эта платформа позволяет делать высокопроизводительные вычисления при минимальном энергопотреблении для глубокого обучения и компьютерного зрения, что крайне востребовано для мобильных вычислительных проектов.
Мы разработали SDK для обработки изображений и видео для NVIDIA Jetson. Здесь мы представляем результаты тестов производительности для различных модулей. В качестве тестового конвейера обработки изображений мы рассмотрим стандартное приложение для обработки данных от камер машинного зрения.
Аппаратные возможности модулей Jetson Nano, TX1, TX2, AGX Xavier
В таблице представлены краткие описания аппаратных возможностей различных модулей Jetson. Сравнивая возможности систем от Nano и до AGX Xavier, хорошо видны не только разнообразие существующих мобильных решения, но и прогресс в этой области.
В приложениях для видео камер мы обычно можем скрыть передачу данных от хоста к устройству с помощью режима zero-copy или благодаря перекрытию копирований и вычислений на GPU. Передача данных от устройства к хосту может быть скрыта с помощью перекрытия копирований / вычислений.
Аппаратные и программные модули для тестирования
- CPU/GPU NVIDIA Jetson Nano, TX1, TX2/TX2i, AGX Xavier
- OS L4T (Ubuntu 18.04)
- CUDA Toolkit 10.2 for Jetson Nano, TX2/TX2i, AGX Xavier
- Fastvideo SDK 0.16.1
Сравнение модулей NVIDIA Jetson: Nano, TX1, TX2, AGX Xavier
Для этих модулей NVIDIA Jetson мы провели измерения производительности для следующих стандартных задач обработки изображений, специфичных для приложений с промышленными видеокамерами: баланс белого, демозаика (дебайер), цветокоррекция, ресайз, кодирование JPEG и т.д. Это не полный набор имеющихся функций из Fastvideo SDK - это просто пример того, какую производительность можно получить для каждого Jetson. Кроме того, тестовое приложение gpu-camera-sample можно загрузить с GitHub, собрать и сделать измерения производительности для вашей схемы обработки данных.
Время обработки (kernel time) на GPU для кадров 2K (1920×1080, 8/16-бит), в миллисекундах
Общее время обработки вычисляется для значений из серых строк таблицы. Это сделано для того, чтобы показать как возможности SDK, так и максимальный результат для каждого модуля Jetson. Приведенная схема обработки является упрощённой, но, тем не менее, она используется в реальных приложениях с промышленными видеокамерами.
Здесь мы сделали оценку времени работы только базового набора модулей обработки изображений из Fastvideo SDK, чтобы разработчики решений на платформе Jetson могли понять, какую производительность обработки они могут получить в своих приложениях. Преобразование изображений из RAW в RGB или из RAW в JPEG - это стандартные задачи, которые возникают в разных областях. Теперь разработчики могут заранее получать подробную информацию об ожидаемой производительности для выбранного конвейера в соответствии с приведенной выше таблицей. В сравнение пока не вошли кодек JPEG2000 для сжатия изображений, а также кодеры и декодеры Jetson H. 264 и H.265 (мы скоро их тоже добавим). Тут важно, что кодеры H.264 и H.265 работают на аппаратном уровне, т.е. кодирование можно будет выполнять параллельно с кодом на CUDA - это снизит нагрузку на видеокарту, а в некоторых случаях можно будет получить еще более высокую производительность.
Мы провели те же измерения времени ядра для графических процессоров NVIDIA GeForce и Quadro. Здесь можно скачать документ с результатами тестов.
Программное обеспечение для тестирования модулей Jetson
Для приложений с промышленными камерами мы разработали программное обеспечение для NVIDIA Jetson и оно доступно для загрузки c Github как в виде бинарных файлов, так в исходных кодах (пример gpu-camera-sample). Этот проект может работать на Windows 7/10, Linux Ubuntu 18.04 и L4T, т.е. не только с Jetson, но и с любыми другими видеокартами NVIDIA. Помимо реализации полного конвейера обработки изображений на графическом процессоре, реализованы опции онлайн-сжатия и потоковой передачи видео, измерения glass-to-glass (G2G) для оценки реальной задержки для камерных систем на Jetson. В настоящее время программное обеспечение работает с камерами машинного зрения XIMEA, Basler, JAI, Matrix Vision и Daheng Imaging.
Для тестирования этого программного обеспечения даже не обязательно иметь видеокамеру, т.к. в нём реализована возможность работы с RAW кадрами с диска, т.е. без участия камеры. Таким образом, можно измерить скорость обработки данных, а также оценить качество.
Чтобы проверить производительность Fastvideo SDK на графическом процессоре ноутбука/настольного компьютера/сервера без какого-либо программирования, также можно скачать программное обеспечение Fast CinemaDNG Processor с графическим интерфейсом для Windows или Linux. Это программное обеспечение имеет окно тестов производительности, и там вы можете увидеть измеренное время для каждого этапа обработки изображений. Этот метод тестирования производительности вообще не требует программирования от пользователя, а конвейер обработки изображений в этом случае может быть довольно сложным - таким образом можно проверить и скорость, и качество. Также можно проверсти различные тесты на изображениях с различным разрешением, чтобы увидеть, насколько производительность зависит от размера изображения, его содержимого и других параметров.
Адрес оригинальной статьи: https://www.fastvideo.ru/blog/jetson-performance-comparison.htm