Результаты тестов
Нагрузочное тестирование
Нагрузочное тестирование позволяет оценить качество и скорость работы OMNI Platform под определённой нагрузкой на заданном интервале времени. В качестве тестового изображения используется изображение в формате png размером 240 КБ (512х512 пикселей).
Спецификация тестовой машины
CPU | RAM | SSD |
| 128 ГБ DDR4 2400 ECC | Samsung EVO 870 500 ГБ |
Метрики
Название метрики | Описание |
Users | Количество параллельно выполняемых запросов. |
Num threads | Число задействованных потоков CPU. |
RPS | Количество выполненных запросов в секунду. |
50% (50-й перцентиль) | 50% запросов выполняются не более чем за это время, в мс. |
95% (95-й перцентиль) | 95% запросов выполняются не более чем за это время, в мс. |
Max | Максимальное время выполнения одного запроса, в мс. |
Avg | Среднее время выполнения одного запроса, в мс. |
Тест 1
Условия тестирования
- Версия модели распознавания лиц: 12v1000.
- ipvs: включен.
- Размер базы лиц: 2 млн профилей.
- Масштабирование: для нагрузочного тестирования используется OMNI Platform 1.16.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 экземпляров.
- platform-processing-dep: 16 экземпляров.
- остальные сервисы: по 1 экземпляру.
Результаты теста
Request* | Users | Num_ threads | RPS | 50% | 95% | Max | Avg |
create_profile (создание профиля по изображению) | 1 | 1 | 0.8 | 1200 | 1300 | 2500 | 1234 |
16 | 1 | 11.4 | 1400 | 1600 | 2122 | 1409 | |
detect (детекция и определение атрибутов лица на изображении) | 1 | 1 | 0.9 | 1100 | 1200 | 1240 | 1101 |
16 | 1 | 12.4 | 1300 | 1500 | 1903 | 1290 | |
profiles (получение списка созданных профилей) | 1 | 1 | 4.8 | 190 | 340 | 379 | 209 |
230 | 1 | 211.6 | 1100 | 1800 | 4412 | 1060 | |
search (поиск лица в базе по изображению) | 1 | 1 | 0.97 | 1000 | 1100 | 1201 | 1030 |
2 | 1.37 | 720 | 770 | 963 | 726 | ||
4 | 1.8 | 540 | 570 | 723 | 543 | ||
8 | 2.2 | 440 | 500 | 635 | 448 | ||
16 | 1 | 13.7 | 1100 | 1300 | 2854 | 1167 | |
2 | 16.3 | 980 | 1200 | 1526 | 981 | ||
4 | 18.4 | 860 | 1000 | 4269 | 868 | ||
8 | 17.3 | 910 | 1000 | 3986 | 921 | ||
search_by_ sample_id (поиск лица в базе по ID сэмпла) | 1 | 1 | 7.9 | 120 | 150 | 2218 | 126 |
70 | 1 | 99.5 | 700 | 770 | 987 | 703 | |
verify (сравнение изображения лица с сэмплом для оценки их принадлежности одному и тому же человеку) | 1 | 1 | 0.9 | 1100 | 1200 | 1233 | 1118 |
16 | 1 | 12.3 | 1300 | 1500 | 2046 | 1304 | |
verify_by_ sample_id (сравнение двух сэмплов для оценки их принадлежности одному и тому же человеку) | 1 | 1 | 14.7 | 65 | 88 | 246 | 67 |
260 | 1 | 259.8 | 1000 | 1400 | 6680 | 926 |
ВЫВОД
Самая длительная операция «Поиск по изображению» выполняется в течение:
- 0,5 сек. при одиночных запросах.
- 1 сек. при нагрузке в 16 одновременных обращений.
/* Подробную информацию по указанным в таблице API-запросам можно посмотреть в Справочнике по API.