Files
pub-beebench/README.md
2026-04-13 12:00:47 +03:00

128 lines
5.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# pub-beebench
Публичный репозиторий с результатами GPU-бенчмарков. Содержимое автоматически
публикуется на сайте через [beebench-publisher](https://github.com/reanimator/beebench).
---
## Структура репозитория
Каждый запуск бенчмарка — отдельная **директория** в корне репозитория или
архив `.tar.gz`. Вложенность произвольная: `result.json` может лежать как
непосредственно в директории бандла, так и в поддиректории.
```
pub-beebench/
dell-r760-h100-2026-04-12/
result.json
00-nvidia-smi-q.log # опционально — используется для определения
gpu-0-steady.log # модели GPU если поле name пустое в result.json
supermicro-x13-a100-2026-03-01/
logs/
gpu-0-steady.log
result.json
xe9680-h100x8-2026-02-15.tar.gz
```
**Правила именования директории/архива** — произвольные, на публикацию не
влияют. Рекомендуется использовать читаемые имена с датой:
`<сервер>-<gpu>-<дата>`.
---
## Формат result.json
Обязательные поля отмечены `*`.
```jsonc
{
"benchmark_version": "v1.0.0",
"generated_at": "2026-04-12T10:30:00Z", // * ISO 8601 UTC
"server_model": "Dell PowerEdge R760", // * используется как заголовок страницы сервера
"hostname": "r760-lab-01", // отображается если server_model не задан
"benchmark_profile": "standard", // произвольная строка: standard / overnight / …
"overall_status": "OK", // OK | WARN | FAIL
"selected_gpu_indices": [0], // индексы GPU участвовавших в тесте
"findings": ["Stable benchmark run"], // список наблюдений
"warnings": [],
"gpus": [ // * минимум один элемент
{
"index": 0, // * порядковый номер GPU
"name": "NVIDIA H100 PCIe 80GB", // * модель; если пустая — берётся из лог-файлов
"status": "OK", // OK | WARN | FAIL
"bus_id": "0000:17:00.0",
"vbios": "96.00.5E.00.02",
"compute_capability": "9.0",
"multiprocessor_count": 114,
"steady": {
"duration_sec": 90,
"avg_temp_c": 73.2,
"p95_temp_c": 75.0,
"avg_power_w": 311.5,
"p95_power_w": 321.0,
"avg_graphics_clock_mhz": 1618,
"p95_graphics_clock_mhz": 1634,
"avg_memory_clock_mhz": 1593,
"p95_memory_clock_mhz": 1593,
"avg_usage_pct": 98.4,
"avg_mem_usage_pct": 92.1
},
"scores": { // * все поля обязательны; compute_score > 0
"compute_score": 932.4,
"power_sustain_score": 901.2,
"thermal_sustain_score": 889.3,
"stability_score": 944.0,
"composite_score": 926.7
},
"degradation_reasons": [],
"notes": ["Healthy run"]
}
]
}
```
### Обязательные условия для публикации
- `generated_at` — должно быть заполнено и являться валидной датой ISO 8601
- `gpus` — минимум один элемент
- `compute_score` хотя бы у одного GPU должен быть больше `0`; запуски где все
оценки равны нулю считаются неудавшимися и отклоняются
---
## Несколько GPU в одном запуске
Если сервер тестировался с несколькими GPU одновременно, все они перечисляются
в массиве `gpus`. Каждая карта получает отдельную запись с собственными
метриками и оценками.
```jsonc
"gpus": [
{ "index": 0, "name": "NVIDIA H100 PCIe 80GB", ... },
{ "index": 1, "name": "NVIDIA H100 PCIe 80GB", ... }
]
```
---
## Дополнительные файлы в бандле
Если поле `name` у GPU пустое, publisher попытается определить модель из
следующих файлов (ищутся в той же директории что и `result.json`):
| Файл | Источник |
|---|---|
| `00-nvidia-smi-q.log` | вывод `nvidia-smi -q` |
| `gpu-0-warmup.log` | лог прогрева |
| `gpu-0-steady.log` | лог steady-фазы |
Остальные файлы (`.html`, `.csv`, `.txt`) игнорируются но могут присутствовать.
---
## Удаление результата
Чтобы убрать результат с сайта — удалите соответствующую директорию или архив
из репозитория и сделайте коммит. Сайт обновится при следующей синхронизации
(по умолчанию раз в сутки).