ExpertiDict

Java · Intermediário · Português · Técnico

aquecimento da JVM

/akesiˈmẽtu da ˈʒotɐ ˈve ˈẽmi/substantivo

Período inicial em que a JVM interpreta o código e vai compilando os trechos quentes com o JIT. Só depois disso o desempenho estabiliza no pico.

Onde usar

Aparece em testes de carga e deploys: as primeiras requisições são lentas. Por isso benchmarks usam JMH e estratégias de pré-aquecimento.

Em código

for (int i = 0; i < 20_000; i++) {
  calcular(); // aquece o JIT
}
long t0 = System.nanoTime();
calcular();
long ns = System.nanoTime() - t0;

Exemplos

As primeiras requisições demoram por causa do aquecimento da JVM.

Faz um aquecimento antes de medir o tempo do teste de carga.

Cuidado

Medir tempo com System.nanoTime em uma única execução mede o aquecimento, não o desempenho real.

Sinônimos

warm-up

Veja também

Todos os termos de Java