#java #производительность #битовые_операции
Если брать нативные языки на подобие "C++" или "C", то там понятен выигрыш в производительности напрямую играться с регистрами, но если брать язык, где все крутится на виртуалке JVM - не совсем понятно, в чем мы можем выиграть в производительности и выиграем ли вообще?? Как работают битовые операции под капотом JVM? Или в джава просто реализованы побитовые операции для лучшей переносимости тех же алгоритмов например с плюсов или си? И в каких реальных случаях в java мире нам будет интересно применять на практике битовые операции?
Ответы
Ответ 1
в чем мы можем выиграть в производительности В производительности перед операциями с аналогичными результатами без применения битовых операций. Если вы думаете, что JVM делает всё медленнее, то ведь не только битовые операции страдают, верно? в каких рельных случаях в java мире нам будет интересно применять на практике битовіе операции? В тех же, что и в остальном мире Если брать нативные языки на подобие "с++" или "С" то там понятен выиграш в производительности напрямую игратся с регистрами, но если брать язык где все крутится на виртуалке JVM JVM - это не интерпретатор, это машина, транслирующая java-байткод в машинный код, соответствующий спецификации. В результате битовых операций будут вызываться ровно те же инструкции процессора, что и на ассемблере. Конкретно в самой битовой операции никакой потери производительности нет, основной "замедлитель" относительно условного си - это наличие сборки мусора и присущих stop-the-world пауз.
Комментариев нет:
Отправить комментарий