Questions tagged [jvm-hotspot]

HotSpot is the standard Java virtual machine used by both the Oracle and OpenJDK Java runtime environments.

HotSpot is the standard Java virtual machine used by both the Oracle and OpenJDK Java runtime environments for Java SE and EE environments.

This makes it the most widely deployed Java virtual machine in the world.

It is capable of running code from any language which can emit a Java .class file, as well as interpreted languages (e.g. JRuby) which have implemented their interpreters in Java (or another JVM language).

As of 2012, there are at least 200 languages which can run on top of the JVM - including Scala, Groovy, Clojure, JRuby, Jython and many smaller, niche languages.

HotSpot gets its name from the ability to dynamically profile running code and detect the "hot spots" of execution - the most commonly executing methods.

As, under most circumstances, programs spend most of their time in a small percentage of their methods, this focusing of optimization effort on the hot methods is very efficient.

HotSpot compiles and aggressively optimizes these hottest methods to highly platform-specific machine code which is specialized for the exact environment the code is running on.

This ability to use information about the runtime environment (precise instruction sets supported, memory and core configuration, etc) allows HotSpot to perform optimization tricks that are just not possible with a generic ahead-of-time strategy for "i386" or "i686" as is commonly seen in C/C++ environments.

This (along with the JVMs advanced memory management and garbage collection subsystem) makes the performance analysis of HotSpot-hosted programs more difficult compared to well-known techniques for C/C++. Direct comparison between the two environments is difficult - they each have individual strengths, and each has areas where they have definite advantages.

696 questions
-1
votes
1 answer

Why does hotspot use different assembly styles in same source code?

For example, hotspot uses at&t and intel style to describe the fence() function. Since both at&t and intel style assembly have the same underlying machine code, why does hotspot use different styles in the same source code?
choxsword
  • 3,187
  • 18
  • 44
-1
votes
1 answer

Difference between JVM, server/jvm.dll file and Java HotSpot VM both client and server versions

Can someone please explain me the difference between JVM, server\jvm.dll file and Java HotSpot VM. I have already studied jvm.dll file from Difference between java.exe, javaw.exe and jvm.dll and HotSpot from Difference between JVM and HotSpot?…
Aman
  • 979
  • 3
  • 10
  • 23
-2
votes
1 answer

Where are member fields located in JVM?

public class MemoryTest { final String fs = "final String"; //A final int fi = 1; //A String s = "Member String"; //A int i = 2; //A final static String fss = "final static String"; //B …
andy.Mo
  • 11
-3
votes
3 answers

java method: java.lang.Integer.numberOfLeadingZeros(int) can be optimized

the origin code is : public static int numberOfLeadingZeros(int i) { // HD, Figure 5-6 if (i == 0) return 32; int n = 1; if (i >>> 16 == 0) { n += 16; i <<= 16; } if (i >>> 24 == 0) { n += 8; i <<= 8; } if (i >>> 28…
Jason
  • 521
  • 2
  • 7
-4
votes
1 answer

How to get the dynamic call graph of a java program

I can't get or modify the source code of the program. So I'm trying to read the jvm(hotspot) source code to see if I can do something when it fetch the "call method" instruction, but it seems very complex. I want to know where is the relevant code I…
-4
votes
2 answers

Which is the correct implementation of JVM?

I just read JRE is an implementation of JVM and HotSpot VM is also an implementation of JVM. Which one is correct ?
Aman
  • 979
  • 3
  • 10
  • 23
1 2 3
46
47