Прежде всего, речь идет не о пользе микрочипов. Я хорошо знаю их цель: указание характеристик производительности и сравнение в очень конкретном случае, чтобы выделить один аспект. Должно ли это иметь какие-либо последствия для вашей работы, это совсем другая история.Как долго нужно запускать микробиблиотеку?
Несколько лет назад кто-то (я думаю, Heinz Kabutz?) Отметил, что каждый бенчмарк, который стоит времени, чтобы посмотреть на его результаты, должен выполняться как минимум несколько минут и должен выполняться как минимум 3 раза, тогда как первый запуск всегда отбрасывается. Это должно было учитывать разминку JVM, а также несоответствия в среде (фоновые процессы, сетевой трафик и т. Д.) И погрешности измерения. Это имело смысл для меня, и мой личный опыт подсказывал что-то подобное, поэтому я всегда принимал эту стратегию.
Однако я заметил, что многие люди (например, Jeff) записывают тесты, которые работают только на пару миллисекунд (!) И запускаются только один раз. Я знаю, что точность краткосрочных тестов выросла в последние годы, но она по-прежнему кажется мне странной. Должен ли не каждый микроцентрифуг работать как минимум на секунду и работать минимум 3 раза, чтобы получить несколько полезный результат? Или это правило устарело сейчас?