Один вопрос, от которого зависит вся смета
Пока на него нет числа, коммерческое предложение — это гадание с точностью до порядка
Разговор с техническим заказчиком по видеоаналитике идет по одному сценарию. Сначала выясняется задача: считать людей, ловить нарушение зоны, находить дрон, проверять каску. Потом — где стоят камеры и сколько их. И на третьей минуте звучит вопрос, ради которого созвон и был назначен: сколько таких камер потянет одна коробка. От ответа зависит не точность модели и не красота интерфейса, а число узлов на объекте, длина кабельных трасс, количество мест в шкафу, класс источника бесперебойного питания и итоговая цифра в смете. Ошибка в этом числе в два раза меняет проект целиком.
Честный ответ подрядчика в этот момент обычно звучит как «на пилоте померим». Он честный, но бесполезный: пилот идет месяц, а цифру надо назвать сегодня. Нечестный ответ звучит увереннее и берется из даташита ускорителя: тринадцать триллионов операций в секунду, модель весит три гигаоперации на кадр, делим одно на другое, получаем четыре тысячи кадров в секунду, значит камер поместится сколько угодно. Это арифметика уровня «автомобиль с мотором в двести лошадиных сил проедет двести километров за час»: величины настоящие, связь между ними выдуманная.
Причина, по которой на этот вопрос не отвечает ни один даташит, простая. Производитель ускорителя измеряет свою деталь: сколько раз в секунду кремний прогонит через себя готовый тензор. Производитель одноплатника измеряет свою: частоту ядер и пропускную способность памяти. Заказчик покупает не деталь, а систему, в которой к этим двум деталям добавлены декодирование восьми потоков H.264, масштабирование каждого кадра, копирование по шине, разбор выходов детектора, трекер, запись клипов на карту памяти, отправка событий по сети и герметичный корпус на солнечной стороне здания. Ни одна из этих строк не входит в паспортную цифру, и вместе они стоят дороже, чем сам инференс.
Дальше в тексте показано, что на нашем железе первым в потолок упирается не то, что называют в презентациях. Не «мощность нейросети» и не «слабый процессор» — а последовательность, в которой единственный ускоритель обслуживает очередь из нескольких камер, и тепловой контур закрытого корпуса, который отбирает у этой очереди пятую часть темпа через двенадцать минут работы. Оба эффекта считаются заранее, оба проверяются за день, и оба переводятся в число камер и в рубли.