Комментарии 8
Ява не умеет AVX использовать?
Мне кажется пора менять акцент с конкретных задачек, на описание алгоритмов и оптимизаций реализованных в JVM. Это улучшит общее понимание проблемы и даст возможность самостоятельно анализировать код.
Не заметил, как у меня во время редактирования пропал кусок разметки с самым интересным результатом работы бенчмарка
Кроме самого факта необычности результата, интересно и то, что на JRE 9.0.4 результат не воспроизводится.
Спасибо sheknitrtch за найденную ошибку!
Vector-with-final-fields
vs Vector-with-non-final-fields
на JRE 1.8.0_161:Benchmark Mode Cnt Score Error Units
FinalOrNotFinal...computeWithFinalsBenchmark avgt 50 2,618 ± 0,075 ns/op
FinalOrNotFinal...computeWithNonFinalsBenchmark avgt 50 0,929 ± 0,005 ns/op
Кроме самого факта необычности результата, интересно и то, что на JRE 9.0.4 результат не воспроизводится.
Спасибо sheknitrtch за найденную ошибку!
Опубликована последняя четвёртая часть: Разбор перформансных задач с JBreak (часть 4).
Отправил соответствующий баг в Oracle по странному различию в производительности по сути идентичного кода (см.
FinalOrNotFinalBenchmark
). Сегодня подтвердили баг: JDK-8200412.Баг был закрыт с резолюцией Won't fix:
Original issue JDK-8139758 is performance enhancement.
We will not be fixing this in 8.
Closing as wnf
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Разбор перформансных задач с JBreak (часть 3)