Результаты тестов
Нагрузочное тестирование
Нагрузочное тестирование позволяет оценить качество и скорость работы OMNI Platform под определённой нагрузкой на заданном интервале времени. В качестве тестового изображения используется изображение в формате png размером 240 КБ (512х512 пикселей).
Спецификация тестовой машины
CPU | RAM | SSD |
| 128 ГБ DDR4 2400 ECC | Samsung EVO 870 500 ГБ |
Метрики
Название метрики | Описание |
Users | Количество параллельно выполняемых запросов. |
Num threads | Число задействованных потоков CPU. |
RPS | Количество выполненных запросов в секунду. |
50%, 60%, ... (50-й, 60-й, ... перцентиль) | % запросов выполняются не более чем за это время, в мс. |
Max | Максимальное время выполнения одного запроса, в мс. |
Avg | Среднее время выполнения одного запроса, в мс. |
Основной нагрузочный тест
Условия тестирования
- Версия модели распознавания лиц: 12v1000.
- ipvs: включен.
- Размер базы лиц: 2 млн профилей.
- Масштабирование: для нагрузочного тестирования используется OMNI Platform 1.18.0 со следующими настройками масштабирования:
- image-api-age-estimator-dep: 8 экземпляров.
- image-api-emotion-estimator-dep: 8 экземпляров.
- image-api-face-detector-liveness-estimator-dep: 8 экземпляров.
- image-api-mask-estimator-dep: 8 экземпляров.
- image-api-face-detector-template-extractor-dep: 16 экземпляров.
- остальные сервисы: по 1 экземпляру.
Результаты теста
Request* | Users | Num_ threads | RPS | Avg | Min | Max |
create_profile (создание профиля по изображению) | 1 | 1 | 0.9 | 1073 | 994 | 1273 |
16 | 1 | 11 | 1395 | 1193 | 3271 | |
detect (детекция и определение атрибутов лица на изображении) | 1 | 1 | 1 | 973 | 886 | 1189 |
16 | 1 | 12 | 1316 | 1094 | 3029 | |
profiles (получение списка созданных профилей) | 1 | 1 | 4.9 | 205 | 157 | 383 |
230 | 1 | 215 | 1066 | 343 | 4587 | |
search (поиск лица в базе по изображению) | 1 | 1 | 0.96 | 1045 | 943 | 2140 |
16 | 1 | 12.5 | 1278 | 1015 | 3807 | |
search_by_ sample_id (поиск лица в базе по ID сэмпла) | 1 | 1 | 6.9 | 145 | 116 | 2321 |
70 | 1 | 33 | 2114 | 113 | 5277 | |
verify (сравнение изображения лица с сэмплом для оценки их принадлежности одному и тому же человеку) | 1 | 1 | 1 | 988 | 907 | 1148 |
16 | 1 | 12 | 1330 | 1116 | 3350 | |
verify_by_ sample_id (сравнение двух сэмплов для оценки их принадлежности одному и тому же человеку) | 1 | 1 | 16 | 62 | 46 | 283 |
260 | 1 | 380 | 667 | 223 | 1120 |
Самая длительная операция «Поиск по изображению» выполняется в течение:
- 0,5 сек. при одиночных запросах.
- 1 сек. при нагрузке в 16 одновременных обращений.
/* Подробную информацию по указанным в таблице API-запросам можно посмотреть в Справочнике по API.
Нагрузочный тест на приём событий / активностей с камер
Тип проверки | Avg (мс) | Min (мс) | Max (мс) | RPS |
Приём событий | 5001 | 156 | 26882 | 24.8 |
Приём активностей | 1372 | 349 | 6169 | 66.5 |
В рамках теста OMNI Platform успешно обрабатывает нагрузку на приём активностей со скоростью 1800 активностей/сек (к OMNI Platform подключено 300 камер, каждая из которых отправляет активности со скоростью 6 активностей/сек).
Нагрузка на приём событий обрабатывается со скоростью 200 событий/сек (к OMNI Platform подключено 200 камер, каждая из которых отправляет события со скоростью 1 событие/сек).