Какой ускоритель берут под машинное зрение в производственном контроле
Как считается конфигурация под машинное зрение на линии: число камер и разрешение, допустимое время отклика, ограничение по декодированию и памяти, размещение узла у линии или в серверном помещении, питание и охлаждение в цеховом шкафу.
Машинное зрение в производственном контроле — задача инференса с ограничением по времени отклика. Решение по браку принимается, пока деталь находится в поле зрения камеры или пока не сработал отбраковщик, поэтому конфигурация подбирается не по максимальной производительности ускорителя, а по тому, укладывается ли обработка кадра в заданный интервал при полном числе камер.
Ниже разобрано, какие данные определяют выбор, чем ограничивается число потоков на один ускоритель, как различаются установка у линии и в серверном помещении и что проверяется по питанию и охлаждению. Направление описано на странице ускорителей NVIDIA.
С каких данных начинается расчёт
Конфигурация считается от потока кадров и требования по времени отклика, а не от названия модели ускорителя.
- Число камер и частота кадров. Определяют суммарный поток, который нужно декодировать и обработать. Контроль поверхности на быстрой линии и контроль сборки на посту различаются по этому показателю на порядок.
- Разрешение и глубина кадра. Задают объём данных на кадр и объём памяти под промежуточные результаты. Для контроля мелких дефектов разрешение обычно выше, чем для контроля наличия и ориентации деталей.
- Допустимое время отклика. Интервал от кадра до решения. Он определяет, можно ли собирать кадры в пакет: пакетная обработка повышает пропускную способность, но увеличивает задержку.
- Модель и её размер. Классификация, обнаружение объектов и сегментация различаются по вычислительной сложности в разы. Размер модели вместе с форматом вычислений задаёт потребность в памяти ускорителя.
- Режим работы. Непрерывная линия или контроль по событию. От этого зависит, нужен ли запас производительности под пиковую загрузку.
- Требование к непрерывности. Остановка линии из-за отказа узла определяет, нужен ли второй узел или резервная карта.
Что ограничивает число потоков на ускорителе
Ограничение редко лежит в вычислительных блоках: раньше упирается декодирование, память или канал передачи кадров.
- Декодирование видео. Если камеры передают сжатый поток, кадры декодируются до обработки. Число одновременных потоков ограничено производительностью аппаратного декодера на карте, и этот предел наступает раньше предела по вычислениям.
- Объём памяти. В памяти размещаются модель, буферы кадров по каждому потоку и промежуточные результаты. При нескольких моделях на одном ускорителе память расходуется на каждую из них.
- Канал передачи данных. Кадры приходят по сети или с платы захвата и копируются в память ускорителя. На высоких разрешениях ограничением становится пропускная способность канала и загрузка процессора на подготовку данных.
- Процессор узла. Предобработка кадра, постобработка результата и логика взаимодействия с линией выполняются на процессоре. Нехватка ядер сказывается как недогрузка ускорителя.
- Разделение между задачами. На части моделей ускоритель можно разделить между независимыми процессами, что удобно при нескольких линиях на один узел. Разбор — в статье Как разделить парк ускорителей между обучением и инференсом.
Как считается конфигурация под заданный поток инференса, разобрано в статье Сколько ускорителей нужно под инференс.
Установка у линии или в серверном помещении
Два варианта размещения, и они предъявляют разные требования к исполнению ускорителя.
- Узел у линии. Короткий путь от камеры до обработки, минимальная задержка, независимость от состояния сети цеха. Требует исполнения, рассчитанного на запылённость и повышенную температуру, компактного корпуса и ускорителя с умеренным потреблением.
- Узел в серверном помещении. Проще обслуживать, легче резервировать и обновлять, один узел обслуживает несколько линий. Кадры идут по сети, поэтому к задержке добавляется сетевая составляющая, а к требованиям — полоса и устойчивость канала.
- Смешанная схема. У линии выполняется предобработка и фильтрация кадров, в серверном помещении — тяжёлые модели и хранение. Снижает нагрузку на сеть, но усложняет обновление.
- Форм-фактор. Для компактных корпусов нужны однослотовые исполнения и ускорители с низким потреблением; серверные платформы допускают полноразмерные карты, но требуют продува. Разбор — в статье Какой продув нужен ускорителю с пассивным охлаждением.
- Исполнение для рабочих станций. Карты с собственным вентилятором ставятся в станцию у линии, но не рассчитаны на плотный монтаж в серверной стойке. Различия — в статье Какой ускоритель берут под инженерные расчёты и визуализацию.
Сопоставление сценариев контроля
| Сценарий контроля | Характер потока | Что определяет выбор ускорителя | Где обычно размещается узел |
|---|---|---|---|
| Контроль наличия и ориентации деталей на сборке | Единицы камер, невысокое разрешение, кадры по событию | Время отклика, компактный корпус, низкое потребление | У линии |
| Контроль поверхности на быстрой линии | Высокое разрешение, непрерывный поток, десятки кадров в секунду | Производительность инференса и память под модель сегментации | У линии или в отдельном шкафу рядом |
| Считывание маркировки и кодов | Невысокий поток, короткие кадры | Задержка отклика, нередко достаточно младшего исполнения | У линии |
| Контроль геометрии и размеров | Несколько камер, высокое разрешение, пакет кадров на деталь | Память и пропускная способность канала передачи кадров | У линии |
| Несколько линий на один узел | Суммарно десятки потоков, сжатое видео | Производительность декодера и возможность разделения ускорителя | Серверное помещение |
| Дообучение модели на накопленных кадрах | Пакетная обработка без ограничения по задержке | Объём памяти и производительность на обучении | Серверное помещение |
Питание, охлаждение и место в шкафу
- Потребление карты. Складывается с потреблением платформы, и в цеховом шкафу это нередко оказывается определяющим ограничением. Как считается запас по питанию при наращивании парка, разобрано в статье Как считают запас по питанию.
- Разъёмы питания. Часть исполнений требует дополнительного питания от блока платформы с конкретным типом разъёма — это сверяется до заказа.
- Охлаждение. Карты с пассивным радиатором рассчитаны на продув платформы и в шкафу без организованного потока воздуха перегреваются. Для цеховых условий закладывается фильтрация воздуха и запас по температуре.
- Температура в цехе. Допустимая температура на входе указывается для платформы и для карты; у линии она обычно выше, чем в серверном помещении, и это сокращает допустимую нагрузку.
- Совместимость с платформой. Габарит, число слотов, длина карты, поддержка в прошивке платформы. Порядок проверки — в статье Как проверить совместимость ускорителя с серверной платформой.
Программная часть и обслуживание
- Среда исполнения модели. Версии драйвера и библиотек должны соответствовать той среде, в которой модель обучалась и проверялась, иначе результат на площадке расходится с результатом на испытаниях.
- Обновления. На линии обновление драйверов планируется на остановку, а не выполняется по ходу работы. Порядок — в статье Обновление драйверов и библиотек на сервере с ускорителями.
- Замена при отказе. Для линии важна скорость восстановления: либо резервный узел, либо карта в запасе на площадке. Порядок замены разобран в статье Как заменить отказавший ускоритель в работающем узле.
- Фиксация конфигурации. Если линий несколько и они вводятся поэтапно, состав узла закрепляется, чтобы следующие были идентичными. Разбор — в статье Как зафиксировать конфигурацию узла для расширения парка.
Частые вопросы
Нужен ли вообще ускоритель, если модель небольшая?
Не всегда. Классификация на небольшом разрешении при невысокой частоте кадров выполняется и на процессоре. Ускоритель становится обязательным, когда растёт разрешение, число камер или сложность модели — обнаружение и сегментация на потоке процессором не закрываются в требуемое время отклика.
Что считать при переходе от испытаний на одной камере к полной линии?
Время обработки одного кадра на целевом ускорителе, затем суммарный поток по всем камерам с запасом на предобработку, декодирование и постобработку. Линейного масштабирования по числу камер не бывает: раньше упирается декодер или канал передачи данных.
Можно ли совместить на одном узле контроль линии и дообучение модели?
Технически можно, но обучение занимает память и вычислительные ресурсы, и время отклика на контроле перестаёт быть предсказуемым. Для линии ресурсы либо разделяются средствами ускорителя, либо дообучение выносится на отдельный узел.
Как учитывается запылённость и вибрация в цехе?
Выбирается платформа в исполнении для промышленных условий с фильтрацией воздуха, а узел размещается в шкафу с организованным продувом. Карта при этом подбирается с запасом по допустимой температуре на входе, так как в цехе она выше серверной.
Что происходит, если модель со временем усложнится?
Потребуется больше памяти и производительности, поэтому при выборе закладывается запас по памяти ускорителя и по питанию платформы. Замена карты в уже установленном узле обходится дешевле, чем замена узла, — при условии, что платформа и питание рассчитаны с запасом.
Что прислать для расчёта. Число камер, разрешение и частоту кадров, способ передачи кадров, тип задачи и размер модели, допустимое время отклика, место размещения узла и условия в этой зоне, выделенную мощность и габариты шкафа, требования к восстановлению при отказе. Полный перечень — в статье Что прислать для расчёта конфигурации.
Что мы делаем
Считаем конфигурацию под заданный поток кадров и время отклика, подбираем исполнение ускорителя по форм-фактору, памяти и потреблению, проверяем совместимость с платформой и запас по питанию и охлаждению, собираем узел целиком и поставляем его с документами для бухгалтерии и таможни. Направления — ускорители NVIDIA и ускорители MetaX.
Пришлите параметры потока и задачу контроля на sale@tkasiatorg.ru — рассчитаем конфигурацию узла под машинное зрение и подберём исполнение ускорителя под условия размещения.

