Jak JVM volá virtuální metody, jaká temná božstva musí vzývat, aby to bylo aspoň trochu rychlé

Aleksey Shipilёv v (ne)dávné době napsal velice obsáhlý článek o volání virtuálních metod v JVM: The Black Magic of (Java) Method Dispatch. Do detailů v něm popsal všechny způsoby, jak lze volat virtuální metody, vysvětlil všechny optimalizace, které JIT javovského virtuálního stroje dělá a otestoval jaký mají dopad na výkon.

Jde o velice hutné čtení, které přetéká výpisy x86 assembleru a low-level detaily fungování kompilátorů JVM. Několik z nich pro bylo i pro mě úplnou novinkou. Rozhodl jsem se proto tady shrnout ty nejzajímavější informace.

Diskuzní příspěvky
Zatím zde nejsou žádné zprávy