Одиночные тесты покрывают обычные действия редактора и lossless-путь очистки JPEG metadata.
Измеренная локальная обработка
QuokkaPix обрабатывает изображения и PDF-файлы в браузере, поэтому скорость зависит от устройства, памяти, браузера и состояния кэша. Эта страница показывает не рекламное обещание, а воспроизводимые измерения: 10 полных прогонов, desktop и mobile Chromium, обычные image workflow, PDF-инструменты и локальное удаление фона с холодным и тёплым запуском модели.
Тесты запускаются через Playwright на production-сборке. Файлы попадают в страницу через тот же browser file input, которым пользуются люди и агенты; затем QuokkaPix выполняет задачу, отдаёт result manifest и сохраняет выходные файлы. Это не синтетический цикл JavaScript.
Одиночные тесты покрывают обычные действия редактора и lossless-путь очистки JPEG metadata.
Пакетные тесты проверяют пять входных файлов, ZIP-результат и цепочку resize + compress + metadata.
PDF-инструменты проверяются как отдельные локальные операции с документами, а не как конвертация картинок.
Первая обработка показывает стоимость загрузки модели, повторная — работу уже прогретого браузерного контекста.
Полосы показывают медиану wall-clock time. Чем короче полоса, тем быстрее workflow. Холодный AI ожидаемо медленнее из-за загрузки и инициализации модели.
Строки сгруппированы по browser project, тестовому случаю и типу запуска. Медиана и среднее считаются по успешным прогонам; success rate учитывает возможные ошибки.
| Проект | Случай | Запуск | Успех | Медиана | Среднее | Мин / макс | Медиана обработки | Медиана результата | Peak JS heap |
|---|---|---|---|---|---|---|---|---|---|
| desktop | Локальное удаление фона быстрой модельюbackground-ai-fast-cold-warm |
cold | 10/10 | 11,898 ms | 11,910 ms | 11,463 ms / 12,424 ms | 11,783 ms | 100.9 KB | 9.5 MB |
| desktop | Локальное удаление фона быстрой модельюbackground-ai-fast-cold-warm |
warm | 10/10 | 5,675 ms | 5,621 ms | 5,287 ms / 5,742 ms | 5,536 ms | 100.9 KB | 9.5 MB |
| desktop | Сжатие пяти файлов в ZIPbatch-compress-zip |
run | 10/10 | 912 ms | 920 ms | 883 ms / 976 ms | 728 ms | 42.2 KB | 9.5 MB |
| desktop | Очистка метаданных JPEGmetadata-lossless-jpeg |
run | 10/10 | 73 ms | 73 ms | 66 ms / 79 ms | 4 ms | 27.7 KB | 10.1 MB |
| desktop | Извлечение страниц PDFpdf-extract |
run | 10/10 | 344 ms | 425 ms | 254 ms / 680 ms | 219 ms | 12.7 KB | 10.1 MB |
| desktop | Объединение двух PDF-документовpdf-merge |
run | 10/10 | 260 ms | 314 ms | 237 ms / 707 ms | 194 ms | 25.0 KB | 9.5 MB |
| desktop | Разделение PDF в ZIPpdf-split |
run | 10/10 | 438 ms | 469 ms | 371 ms / 625 ms | 270 ms | 37.8 KB | 10.1 MB |
| desktop | Сценарий размера, сжатия и метаданныхscenario-web-optimization |
run | 10/10 | 991 ms | 975 ms | 885 ms / 1,020 ms | 807 ms | 32.6 KB | 48.1 MB |
| desktop | Сжатие одного изображения в WebPsingle-compress-webp |
run | 10/10 | 558 ms | 572 ms | 543 ms / 708 ms | 474 ms | 9.4 KB | 10.1 MB |
| desktop | Изменение размера одного изображенияsingle-resize-fit |
run | 10/10 | 555 ms | 562 ms | 518 ms / 718 ms | 392 ms | 19.5 KB | 10.1 MB |
| mobile | Локальное удаление фона быстрой модельюbackground-ai-fast-cold-warm |
cold | 10/10 | 11,813 ms | 11,823 ms | 11,560 ms / 12,119 ms | 11,717 ms | 100.9 KB | 9.8 MB |
| mobile | Локальное удаление фона быстрой модельюbackground-ai-fast-cold-warm |
warm | 10/10 | 5,666 ms | 5,604 ms | 5,287 ms / 5,691 ms | 5,551 ms | 100.9 KB | 9.8 MB |
| mobile | Сжатие пяти файлов в ZIPbatch-compress-zip |
run | 10/10 | 887 ms | 898 ms | 832 ms / 1,005 ms | 726 ms | 42.2 KB | 9.5 MB |
| mobile | Очистка метаданных JPEGmetadata-lossless-jpeg |
run | 10/10 | 68 ms | 67 ms | 61 ms / 73 ms | 4 ms | 27.7 KB | 10.1 MB |
| mobile | Извлечение страниц PDFpdf-extract |
run | 10/10 | 246 ms | 342 ms | 233 ms / 632 ms | 175 ms | 12.7 KB | 10.1 MB |
| mobile | Объединение двух PDF-документовpdf-merge |
run | 10/10 | 250 ms | 266 ms | 244 ms / 382 ms | 193 ms | 25.0 KB | 9.5 MB |
| mobile | Разделение PDF в ZIPpdf-split |
run | 10/10 | 383 ms | 419 ms | 367 ms / 552 ms | 226 ms | 37.8 KB | 9.8 MB |
| mobile | Сценарий размера, сжатия и метаданныхscenario-web-optimization |
run | 10/10 | 937 ms | 928 ms | 848 ms / 1,003 ms | 799 ms | 32.6 KB | 48.1 MB |
| mobile | Сжатие одного изображения в WebPsingle-compress-webp |
run | 10/10 | 545 ms | 548 ms | 532 ms / 580 ms | 465 ms | 9.4 KB | 10.1 MB |
| mobile | Изменение размера одного изображенияsingle-resize-fit |
run | 10/10 | 517 ms | 518 ms | 512 ms / 533 ms | 394 ms | 19.5 KB | 10.1 MB |
Wall time начинается после загрузки файлов в браузер и заканчивается, когда редактор достигает финального статуса. Он включает локальный JavaScript, browser export, сборку ZIP/PDF и обновление состояния результата.
Result manifest QuokkaPix сообщает внутреннюю длительность обработки, когда она доступна. Это полезно для отладки, а wall time ближе к тому, что ощущают человек или агент.
Chromium отдаёт performance.memory в этой среде. Это не вся память процесса, поэтому таблица честно называет метрику sampled JS heap.
| Область | Покрытые случаи | Что это доказывает | Что не доказывает |
|---|---|---|---|
| Core image tools | Resize, WebP compression, JPEG metadata cleanup | Основной browser export path завершается на desktop и mobile проектах. | Не проверяет каждый входной формат, quality value или crop geometry. |
| Batch и сценарии | Пять файлов в ZIP и batch scenario | Очередь, ZIP-выход и chained settings работают через публичную agent surface. | Не заменяет stress test для 50 больших файлов на телефоне с малой памятью. |
| PDF tools | Split, extract и merge | PDF mode принимает PDF-файлы и локально создаёт ZIP/PDF outputs. | Не измеряет большие сканированные PDF и защищённые документы. |
| Background AI | Fast model cold и warm | Локальная модель запускается, а warm run быстрее после инициализации. | Не сравнивает качество маски с внешними AI-сервисами. |
| Agent compatibility | Тесты идут через window.QuokkaPixAgent | Тот же runtime может применять настройки, загружать файлы, запускать обработку и читать manifest. | Платёжный x402 settlement проверяется отдельно. |
Для текущего набора fixtures результаты выглядят нормальными: metadata cleanup и PDF-сборка быстрые, ZIP и сценарии укладываются примерно в пользовательский интерактивный диапазон, а локальный AI остаётся самым тяжёлым путём. Главный сигнал — все измеренные entries завершились успешно, а тёплый AI заметно быстрее холодного.
Публичные числа получены из нескольких полных прогонов. Страница показывает median, average, min и max, а не лучший один запуск.
Файлы подобраны маленькими и стабильными. Они подтверждают работоспособность путей и дают baseline, но не обещают такое же время для 60 MB фото или 200-страничного PDF.
QuokkaPix использует browser APIs, workers и локальные encoder paths. Версия браузера, драйверы, throttling CPU, батарея и cache state могут менять результат.
Benchmark загружает файлы только в локальную страницу браузера. Серверный API обработки изображений для обычной обработки не используется.
Сравнивайте классы workflow: metadata cleanup, resize/compress, batch ZIP, PDF tools и локальный background AI. Не переносите число с маленького fixture на реальный каталог без похожего размера файлов и браузера.
Пусть агент читает live capabilities и result manifest в текущей сессии. Benchmark показывает, что workflow surface измерим; он не отменяет per-run QA.
После изменений encoder, worker, PDF или background model запускайте тот же набор. Хороший regression report должен включать browser version, device class, cache state, case id и cold/warm status.
Нет. Это измерения для конкретного окружения и fixtures. Они полезны как baseline и доказательство, что browser workflows стабильно завершаются.
Одна средняя величина скрывает cold starts, выбросы и разные стоимости workflow. Median, min и max честнее показывают разброс.
Да, он использует тот же runtime surface: file input, settings, start, status и result manifest. Но production analytics и paid x402 tests это не заменяет.