Skip to content

Latest commit

 

History

History
100 lines (71 loc) · 6.17 KB

File metadata and controls

100 lines (71 loc) · 6.17 KB

CLI

Команда run

Запускает бенчмарки по указанному файлу, имени класса или директории.

benchos run [OPTIONS] [FILE]

Аргумент [FILE]

Аргумент [FILE] задает источник бенчмарков для запуска. Можно передать один или несколько аргументов.

Поддерживаются следующие варианты:

  • имя файла в текущей директории: МойКласс.os;
  • имя без расширения, если файл МойКласс.os находится в текущей директории: МойКласс;
  • абсолютный или относительный путь к .os-файлу;
  • путь к каталогу с файлами бенчмарков.

Особенности:

  • если передан каталог, CLI ищет в нем файлы *.os, а с опцией -r делает это рекурсивно;
  • если явно передан .os-файл без методов с &Бенчмарк, CLI считает, что в файле в сценарии расположен один алгоритм;
  • если передано несколько .os-файлов без методов с аннотацией &Бенчмарк, каждый из них запускается отдельно, а результаты объединяются в один общий отчет;
  • при запуске каталога ожидаются обычные файлы бенчмарков с аннотациями.

Опции

Опция Описание По умолчанию Пример
--iterationCount Количество измерительных итераций 15 --iterationCount 10
--iterationTime Минимальное время выполнения одной итерации (мс) 100 --iterationTime 500
--warmupCount Количество прогревочных итераций 6 --warmupCount 10
--invocationCount Количество вызовов метода за итерацию (0 = авто) 0 --invocationCount 100
--runtime Версии OneScript через запятую (current, stable, dev, x.x.x) --runtime dev,stable
--throughput Стратегия выполнения ПропускнаяСпособность
--coldstart Стратегия выполнения ХолодныйЗапуск
-m, --memory Включить мониторинг использования памяти
-e, --exporters Форматы экспорта результатов через запятую: md, json, html -e json,html
-a, --artifacts Каталог для сохранения результатов .\BenchmarkArtifacts -a path/to/dir
-p, --param Общий параметр бенчмарков в формате <Поле>=<Значение>; поддерживаются Число, Строка, Булево -p Количество=100 -p Количество=500 -p "СтроковойПараметр=test value" -p Флаг=true
-r, --recursive Рекурсивный поиск в поддиректориях
--settings Файл настроек бенчмарков в формате JSON --settings path/to/settings.json
--debug Порт отладки --debug 2801

Примечания

  • Опции --throughput и --coldstart взаимно исключают друг друга.
  • Значение --invocationCount 0 включает автоматический расчёт количества вызовов за итерацию.
  • Опции --warmupCount, --invocationCount, --iterationTime игнорируются при стратегии --coldstart.
  • Повторяйте -p / --param, чтобы передать несколько общих параметров.

Переменные среды

BENCHOS_PROCESS_TIMEOUT

Таймаут ожидания завершения процесса бенчмарка в секундах (По умолчанию: 600 секунд).

Пример:

$env:BENCHOS_PROCESS_TIMEOUT=120
benchos run /path/to/МойКласс.os

Примеры

# Запуск по имени класса (файл МойКласс.os должен существовать в текущей директории)
benchos run МойКласс

# Запуск по имени файла в текущей директории
benchos run МойКласс.os

# Запуск по абсолютному пути
benchos run /path/to/МойКласс.os

# Запуск обычного файла без аннотаций &Бенчмарк
benchos run /path/to/Алгоритм.os

# Запуск нескольких plain .os-файлов с одним общим отчетом
benchos run /path/to/Алгоритм1.os /path/to/Алгоритм2.os

# Запуск всех бенчмарков в директории
benchos run /path/to/benchmarks

# Запуск всех бенчмарков в директории, включая вложенные каталоги
benchos run -r /path/to/benchmarks

# Рекурсивный запуск с мониторингом памяти и экспортом в JSON и HTML
benchos run -r -m -e 'json, html' ./benchmarks/

# Холодный запуск с 10 итерациями
benchos run --coldstart --iterationCount 10 /path/to/МойКласс.os

# Запуск с общими параметрами бенчмарков
benchos run -p Количество=100 -p Количество=500 -p "СтроковойПараметр=test value" -p Флаг=true /path/to/МойКласс.os