|
| 1 | +# Параметризация |
| 2 | + |
| 3 | +С помощью аннотации `&Параметры` можно задать параметры для полей класса и методов бенчмарков. |
| 4 | + |
| 5 | +**API** |
| 6 | + |
| 7 | +```bsl |
| 8 | +// Поле класса |
| 9 | +Конфигурация.ДобавитьПараметр("ИмяПоля", 100); |
| 10 | +``` |
| 11 | + |
| 12 | +```bsl |
| 13 | +// Параметры метода бенчмарка |
| 14 | +Параметры = Новый Массив(); |
| 15 | +Параметры.Добавить(100); |
| 16 | +Параметры.Добавить(Ложь); |
| 17 | +ДескрипторБенчмарка.ДобавитьПараметры(Параметры); |
| 18 | +``` |
| 19 | + |
| 20 | +### Пример |
| 21 | + |
| 22 | +```bsl |
| 23 | +&Параметры(5, 0) |
| 24 | +Перем ДобавляемаяЗадержка Экспорт; // Число |
| 25 | +
|
| 26 | +&Бенчмарк |
| 27 | +&Параметры(100, 10) |
| 28 | +&Параметры(100, 20) |
| 29 | +&Параметры(200, 10) |
| 30 | +&Параметры(200, 20) |
| 31 | +Процедура Бенчмарк(Задержка1, Задержка2) Экспорт |
| 32 | + Приостановить(Задержка1 + Задержка2 + ДобавляемаяЗадержка); |
| 33 | +КонецПроцедуры |
| 34 | +``` |
| 35 | + |
| 36 | +### Вывод |
| 37 | + |
| 38 | +```md |
| 39 | +// Бенчмарк: МойКласс.Бенчмарк |
| 40 | +// Параметры: ДобавляемаяЗадержка=5, Задержка1=100, Задержка2=10 |
| 41 | + |
| 42 | +Оценка 1 : 4 op, 464.1 ms, 116.0 ms/op |
| 43 | +Оценка 2 : 4 op, 463.9 ms, 116.0 ms/op |
| 44 | + |
| 45 | +Прогрев 1 : 4 op, 463.3 ms, 115.8 ms/op |
| 46 | +Прогрев 2 : 4 op, 463.8 ms, 116.0 ms/op |
| 47 | +Прогрев 3 : 4 op, 463.7 ms, 115.9 ms/op |
| 48 | +Прогрев 4 : 4 op, 463.1 ms, 115.8 ms/op |
| 49 | +Прогрев 5 : 4 op, 463.8 ms, 115.9 ms/op |
| 50 | +Прогрев 6 : 4 op, 463.6 ms, 115.9 ms/op |
| 51 | + |
| 52 | +Измерение 1 : 4 op, 464.1 ms, 116.0 ms/op |
| 53 | +Измерение 2 : 4 op, 463.5 ms, 115.9 ms/op |
| 54 | +Измерение 3 : 4 op, 463.0 ms, 115.8 ms/op |
| 55 | +Измерение 4 : 4 op, 463.7 ms, 115.9 ms/op |
| 56 | +Измерение 5 : 4 op, 463.3 ms, 115.8 ms/op |
| 57 | +Измерение 6 : 4 op, 462.9 ms, 115.7 ms/op |
| 58 | +Измерение 7 : 4 op, 463.8 ms, 115.9 ms/op |
| 59 | +Измерение 8 : 4 op, 463.4 ms, 115.9 ms/op |
| 60 | +Измерение 9 : 4 op, 464.1 ms, 116.0 ms/op |
| 61 | +Измерение 10: 4 op, 463.7 ms, 115.9 ms/op |
| 62 | +Измерение 11: 4 op, 463.7 ms, 115.9 ms/op |
| 63 | +Измерение 12: 4 op, 464.0 ms, 116.0 ms/op |
| 64 | +Измерение 13: 4 op, 463.6 ms, 115.9 ms/op |
| 65 | +Измерение 14: 4 op, 463.1 ms, 115.8 ms/op |
| 66 | +Измерение 15: 4 op, 463.8 ms, 116.0 ms/op |
| 67 | + |
| 68 | +// Бенчмарк: МойКласс.Бенчмарк |
| 69 | +// Параметры: ДобавляемаяЗадержка=0, Задержка1=100, Задержка2=10 |
| 70 | + |
| 71 | +... |
| 72 | + |
| 73 | +// Сводка |
| 74 | + |
| 75 | +BenchmarkOneScript v0.1.0, OneScript v2.0.0.567-rc7-29039316, Microsoft Windows NT 10.0.20348.0 \ |
| 76 | +Intel Core i7-8700 CPU 3.20GHz (Max: 3.19GHz) (Coffee Lake), 1 CPU, 12 logical and 6 physical cores |
| 77 | + |
| 78 | +| Method | ДобавляемаяЗадержка | Задержка1 | Задержка2 | Mean | StdErr | StdDev | Median | Op/s | |
| 79 | +|----------|--------------------:|----------:|----------:|---------:|---------:|---------:|---------:|------:| |
| 80 | +| Бенчмарк | 0 | 100 | 10 | 110.9 ms | 5.608 us | 21.72 us | 110.9 ms | 9.018 | |
| 81 | +| Бенчмарк | 0 | 100 | 20 | 120.9 ms | 6.286 us | 24.35 us | 120.9 ms | 8.272 | |
| 82 | +| Бенчмарк | 0 | 200 | 10 | 210.8 ms | 9.394 us | 36.38 us | 210.8 ms | 4.743 | |
| 83 | +| Бенчмарк | 0 | 200 | 20 | 220.9 ms | 5.035 us | 19.50 us | 220.9 ms | 4.526 | |
| 84 | +| Бенчмарк | 5 | 100 | 10 | 115.9 ms | 6.362 us | 24.64 us | 115.9 ms | 8.628 | |
| 85 | +| Бенчмарк | 5 | 100 | 20 | 126.0 ms | 4.250 us | 16.46 us | 126.0 ms | 7.939 | |
| 86 | +| Бенчмарк | 5 | 200 | 10 | 215.9 ms | 8.525 us | 33.02 us | 215.9 ms | 4.632 | |
| 87 | +| Бенчмарк | 5 | 200 | 20 | 225.9 ms | 5.786 us | 22.41 us | 225.9 ms | 4.427 | |
| 88 | + |
| 89 | +// Легенда |
| 90 | +ДобавляемаяЗадержка : Значение параметра 'ДобавляемаяЗадержка' |
| 91 | +Задержка1 : Значение параметра 'Задержка1' |
| 92 | +Задержка2 : Значение параметра 'Задержка2' |
| 93 | +Mean : Арифметическое среднее всех измерений |
| 94 | +StdErr : Стандартная ошибка всех измерений |
| 95 | +StdDev : Стандартное отклонение всех измерений |
| 96 | +Median : Значение, разделяющее упорядоченные измерения на две равные части |
| 97 | +Op/s : Операций в секунду |
| 98 | +1 ms : 1 Миллисекунда |
| 99 | +1 us : 1 Микросекунда |
| 100 | +``` |
0 commit comments