Conbench

Бесплатно
Открытый исходный код

Сайт: conbench.github.io/conbench

Conbench — это программный фреймворк для непрерывного бенчмаркинга производительности вычислительных задач. Он предназначен для автоматизированного запуска, сбора и хранения результатов бенчмарков в структурированном формате (обычно JSON), а также для сопоставления и визуализации этих результатов через программный интерфейс и веб-панель. Система ориентирована на повторяемость измерений, учёт характеристик аппаратной платформы и удобство интеграции с различными языками и инструментами разработки.

Проект обеспечивает сбор метаданных о среде выполнения, включая информацию о процессоре, операционной системе и конфигурации, что позволяет корректно интерпретировать и сравнивать результаты на разных машинах. Conbench поддерживает запуск бенчмарков в локальных и удалённых окружениях, хранение версий и экспериментальных сборок, а также предоставляет API для автоматизированного анализа и построения отчетов. Если точная история проекта или авторство неочевидны в общедоступных источниках, в тексте это отражено кратко и далее изложена общая функциональность и типичные сценарии применения.

  • Сбор результатов: агрегирование данных бенчмарков в формате JSON с метками времени и контекстной информацией.
  • Инвентаризация окружения: автоматическое получение сведений об аппаратной и программной конфигурации для каждой записи.
  • Многоязычная поддержка: возможность запускать и интегрировать бенчмарки, написанные на разных языках программирования.
  • Хранение и версионирование: сохранение исторических данных для сравнения результатов между версиями кода или конфигурациями.
  • API для автоматизации: программный интерфейс для записи, чтения и фильтрации результатов, позволяющий строить собственные инструменты анализа.
  • Веб-панель и визуализация: интерфейс для просмотра временных рядов результатов, сравнений и сводных метрик.
  • Повторяемость измерений: механизмы для контроля условий запуска и минимизации шумов в измерениях.
  • Интеграция с CI/CD: возможности для включения бенчмарков в конвейеры непрерывной интеграции и доставки.
  • Форматы экспорта: экспорт данных в стандартных форматах для внешнего анализа или архивации.
  • Фильтрация и агрегация: средства для сравнения наборов результатов по метаданным, версии ПО или аппаратным признакам.
Подробнее