Здравствуйте, AndrewVK, Вы писали:
AVK>Еще такой вопрос: зачем указывать нижнюю границу коэффициента и будет ли считаться тест непрошедшим, если он выполнится быстрее нижней границы?
Добавил.
Бонусом — значения <0 обрабатываются как "не учитывать". Итого:
[CompetitionBenchmark] // падает всегда, т.к. не заданы границы.
[CompetitionBenchmark(1.5, 3)] // падает, если быстрее, чем 1.5x и медленнее, чем 3x.
[CompetitionBenchmark(1.5, -1)] // падает, если быстрее, чем 1.5x.
[CompetitionBenchmark(-1, 3)] // падает, если медленнее, чем 3x.
[CompetitionBenchmark(3)] // падает, если медленнее, чем 3x.
[CompetitionBenchmark(-2, -3)] // не падает вообще.
[Benchmark] // не падает вообще.
Здравствуйте, Sinix, Вы писали:
S>А вот это нормально, я границы подправлю чуть пожже. Замерял на ноуте, там результаты из-за агрессивного speed step легко процентов на 20 скачут. Пока лучше пометить тесты как Explicit, чтоб на них не отвлекаться.
Видимо, придется так и сделать — там уже и 0.77 об baseline проскакивают. Как то оно архинестабильно.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
Здравствуйте, AndrewVK, Вы писали:
AVK>Видимо, придется так и сделать — там уже и 0.77 об baseline проскакивают. Как то оно архинестабильно.
Ну вот как-то так вот. Как будет время, попробую отказаться от хранения результата в поле (Storage) в тестах. Есть у меня мысля, что оно в итоге в память упирается.
Должно вылечиться с переездом на in-process бенчмарки, там фоновой нагрузки из-за запуска процесса нет.
Вариант 2 — определить какой-нибудь символ для сборки на CI-сервере и если он включён, настраивать FastRunConfig на большее количество прогонов.
Здравствуйте, AndrewVK, Вы писали:
AVK>Видимо, придется так и сделать — там уже и 0.77 об baseline проскакивают. Как то оно архинестабильно.
Починил вроде.
Изначально идея была в том, что запись результата в поле добавит разброса результатам, чтобы не возиться с подгоном границ теста под разные машины — в общем оно сработало чересчур удачно
Здравствуйте, Sinix, Вы писали:
S>Изначально идея была в том, что запись результата в поле добавит разброса результатам, чтобы не возиться с подгоном границ теста под разные машины — в общем оно сработало чересчур удачно
Оно прежде всего оптимизацию вырубило, так что разница между baseline и операторами стала крошечной. А с локальной переменной разница в 6-7 раз.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
Здравствуйте, AndrewVK, Вы писали:
S>>Изначально идея была в том, что запись результата в поле добавит разброса результатам, чтобы не возиться с подгоном границ теста под разные машины — в общем оно сработало чересчур удачно AVK>Оно прежде всего оптимизацию вырубило, так что разница между baseline и операторами стала крошечной. А с локальной переменной разница в 6-7 раз.
Ок, чего делаем? Оставляем текущий вариант, откатываем на поле, делаем больше прогонов, чтобы результат не так скакал?.
UPD У меня разброс не так велик, например для BitwiseAndOperator MinRatio="2.24" MaxRatio="2.87". Завтра на нормальной машине проверю.
Здравствуйте, Sinix, Вы писали:
S>Ок, чего делаем? Оставляем текущий вариант, откатываем на поле, делаем больше прогонов, чтобы результат не так скакал?.
ХЗ.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>