Мне нужны были лучшие ориентиры Go, поэтому я сделал Vizb

Мне нужны были лучшие ориентиры Go, поэтому я сделал Vizb

27 июня 2025 г.

Бенчмаркинг в Go прост, но визуализировать эти результаты? Вот где все становится грязным. Когда вы сравниваете различные библиотеки или реализации по различным рабочим нагрузкам, уставившись на номера RAW, просто не сокращается.

Я оказался в этой точной ситуации, работая с моей библиотекой очерков сообщений,varmqПолем Мне нужно было сравнить производительность в разных сценариях, но существующие инструменты визуализации либо не существовали, либо не соответствовали моим потребностям.

Итак, я построилVizb- Инструмент CLI, который превращает результаты GO в красивые, интерактивные HTML -диаграммы с одной командой.

Магия в простоте

go test -bench . -run=^$ -json | vizb -o output.html

Вот и все. Одна команда, и вы получаете:

  • Интерактивные HTML -диаграммыпоказывая время выполнения, использование памяти и распределение
  • Отзывчивый дизайнэто работает на любом устройстве
  • Экспортные возможности- Загрузите диаграммы как изображения PNG прямо из вашего браузера
  • Умная группировкачто автоматически организует ваши тесты по рабочей нагрузке и субъекту

Ключевые функции, которые на самом деле имеют значение

Многочисленные метрики в одном взгляде: Сравните время выполнения, использование памяти и количество распределения бок о бок.

Настраиваемые единицы: Отображать метрики в ваших предпочтительных единицах (NS/μS/MS/S для времени, B/кб/МБ/ГБ для памяти).

Гибкий вход: Работает с файлами или вводом трубопровода - что угодно ваш рабочий процесс.

Вывод JSON: Нужны данные в другом формате? Использовать--format jsonЧтобы получить структурированные данные вместо HTML.

Пример реального мира

Вот как VIZB автоматически объединяет ваши тесты. Если у вас есть:

BenchmarkEncoder/small/json
BenchmarkEncoder/small/msgpack
BenchmarkEncoder/large/json
BenchmarkEncoder/large/msgpack

VIZB создает диаграммы, где:

  • Тест: Кодер
  • Рабочие нагрузки: Маленький, большой
  • Субъекты: json, msgpack

Результат? Чистые, организованные графики, которые сразу же очевидны различия в производительности.

Почему это важно

Когда вы оптимизируете код или выбираете между библиотеками, вам нужны идеи, а не необработанные числа. VIZB превращает ваши контрольные данные в действенные визуализации, которые помогут вам быстрее принимать лучшие решения.

Проверьте это:github.com/goptics/vizb

Проверьте тесты в прямом эфире:VarmQ-Benchmark

Установите его с:go install github.com/goptics/vizb

Счастливого сравнительного анализа! 🚀


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE