LINUX.ORG.RU

hyperfine 1.19.0

 , , , ,

hyperfine 1.19.0

0

2

Состоялся выпуск 1.19.0 кроссплатформенной (Linux, MacOS, Windows) консольной утилиты hyperfine, написанной на языке Rust и распространяемой по лицензиям Apache-2.0 и MIT. Утилита предназначена для сравнения производительности других консольных утилит.

Список изменений:

  • добавлена опция --reference <cmd> позволяющая вручную указать команду <cmd>, с которой будут сравниваться результаты выполнения других команд;
  • добавлена опция --conclude <cmd>, выполняющая команду <cmd> после выполнения измеряемой команды;
  • команда --output= может быть задана для каждой команды;
  • переменная окружения $HYPERFINE_ITERATION теперь содержит текущий номер итерации для каждой команды бенчмарка;
  • в сообщение об ошибке добавлена информация об итерации;
  • в скрипт plot_histogram.py добавлена возможность позиционирования легенды графика на диаграмме. Выходной DPI графика установлен в 600 DPI;
  • улучшен скрипт plot_whisker.py;
  • исправлена ошибка отображения примерного времени выполнения в эмуляторах терминала с блочным курсором;
  • исправлено автодополнение zsh;
  • добавлена сборка aarch64-apple-darwin;
  • различный рефакторинг кода.

>>> Подробности

★★★★★

Проверено: maxcom ()
Последнее исправление: dataman (всего исправлений: 2)
Ответ на: комментарий от mydibyje

Полезный флаг на самом деле, если тестируемая утилита что-то читает с диска. Как раз прогреть дисковый кеш, чтобы на результаты влиял поменьше. :)

Я им даже не консольные утилиты проверяю. Например, запускаю xash3d-fwgs с флагом -timedemo, который прогоняет заранее записанную демку без задержек и по её окончанию выходит, что полезно для общей оценки производительности клиента игры, не учитывая отдельные сцены. hyperfine прогоняет несколько раз и сразу выдает удобоваримые результаты, минимум, максимум, среднее и погрешность.

a1ba ★★
()
Последнее исправление: a1ba (всего исправлений: 2)
Ответ на: комментарий от mydibyje

Словил вайбы гоев. Тех тоже прогревают.

не благодари... /fxd

etwrq ★★★★★
()
Ответ на: комментарий от a1ba

А если утилита юзером используется в кейсе: запустил разок и закрыл? Тогда прогрев исказит данные, потому что hyperfine запускает её не так как юзер, разок, а несколько раз. И как понять что кеш прогрет, hyperfine это показывает?

mydibyje ★★★★
()
Ответ на: комментарий от mydibyje

Cache-clearing commands can be set up before each timing run.

Можно напрячься и охлаждать каждый раз кэш. Но так как это по идее должна делать утилита. А она этого не делает. И пользователю неохота разбираться, то просто всё время на тёплом кэше.

thegoldone ★★
()
Ответ на: комментарий от mydibyje

Так для этого тоже есть опция. У hyperfine есть флаг –prepare, который запустит переданную команду. Можно так кэши почистить, например.

a1ba ★★
()
Ответ на: комментарий от Wizard_

Программы не только с диска информацию читают, а ещё байтики перекладывают из одного места в другое.

a1ba ★★
()
Последнее исправление: a1ba (всего исправлений: 1)
Ответ на: комментарий от Wizard_

прогреть дисковый кеш

И какое это отношение тогда будет иметь к производительности утилиты?

Прогревание дискового кеша не имеет никакого отношения к производительности утилиты. Прогревание дискового кеша имеет отношение к замерам производительности утилиты.

Gentooshnik ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.