Avatar billede magoo20000 Nybegynder
25. juni 2002 - 19:31 Der er 4 kommentarer og
1 løsning

Compiler

Er der nogen, som kan forklare mig, hvad HotSpot compileren gør? Er det en såkaldt jit-compiler? Jeg troede java's bytekode blev fortolket... Evt., hvordan fungerer det i forhold til Microsofts CLR?
Avatar billede r9 Nybegynder
25. juni 2002 - 19:45 #1
Avatar billede quaid Nybegynder
25. juni 2002 - 22:41 #2
Hot spot ser ved første gennemløb bytekoden igennem om der er "dyre" metodekald og andet der er tungt at afvikle. Derefter indlejrer JVM disse i sig selv (formentlig assembler), så den kan afvikle dem meget hurtigere en ellers.
QD::
Avatar billede disky Nybegynder
27. juni 2002 - 10:13 #3
quaid:

Det er næsten korrekt.

JVM'en laver en profiling af programmer, og det metoder der bruges meget tid i bliver gemt i ren assembler i stedet for i bytecode.
Det kan både være pga. tung beregning, men skyldes oftest mange metode kald.

Man kan endda fremelske denne fremgangsmåde i JDK1.4 ver at skrive

java -server MinKlasse

når man starter programmet.

Parameteren bevirker at JVM'en optimerer endnu mere og bruger derfor mere ram.
Det skal dog siges at opstartstiden bliver forlænget pga. denne parameter. Og egnes derfor bedst til application der kører længe af gangen.
Avatar billede quaid Nybegynder
27. juni 2002 - 11:45 #4
Netop. Man ser bla. andet tydeligt i symbolsk maskinkode at specielt invoke virtual tager op til 5 clock cykler for at blive afviklet, så metodekald er tunge.
Har prøvet -server, men kunne ikke få det til at køre når jeg samtidig ville give den en -cp til commApien.
QD::
Avatar billede disky Nybegynder
27. juni 2002 - 12:19 #5
hmmm lyder mystisk.

Ellers sørg for at commapi'en er nævnt i systemmets classpath så skulle det virke.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester