On bionic LGTM:
$ lsb_release -a | fgrep Codename Codename: bionic $ uname -a Linux guest 4.15.0-53-generic #57-Ubuntu SMP Thu Jun 13 09:28:40 UTC 2019 ppc64le ppc64le ppc64le GNU/Linux $ java -version openjdk version "11.0.3" 2019-04-16 OpenJDK Runtime Environment (build 11.0.3+7-Ubuntu-1ubuntu218.04.1) OpenJDK 64-Bit Server VM (build 11.0.3+7-Ubuntu-1ubuntu218.04.1, mixed mode)
$ sudo apt-get install -y linux-tools-$(uname -r)/bionic-proposed
cat << EOF > hello.java class hello { static void printX() { System.out.printf("X"); }
public static void main(String[] args) { int i; for (i=0; i < 64000; i++) printX(); } } EOF
$ javac hello.java $ sudo perf record -k 1 -e instructions:u java -agentpath:/usr/lib/linux-tools-4.15.0-53/libperf-jvmti.so hello > /dev/null java: jvmti: jitdump in /home/user/.debug/jit/java-jit-20190620.XXH3rSWT/jit-4232.dump [ perf record: Woken up 1 times to write data ] [ perf record: Captured and wrote 0.136 MB perf.data (3368 samples) ] $ sudo perf inject -i ./perf.data -j -o ./perf.data.jitted $ sudo perf report -f -i ./perf.data.jitted |& fgrep printX 0.38% java jitted-4232-595.so [.] class hello.printX()
On bionic LGTM:
$ lsb_release -a | fgrep Codename 7-Ubuntu- 1ubuntu218. 04.1) 7-Ubuntu- 1ubuntu218. 04.1, mixed mode)
Codename: bionic
$ uname -a
Linux guest 4.15.0-53-generic #57-Ubuntu SMP Thu Jun 13 09:28:40 UTC 2019 ppc64le ppc64le ppc64le GNU/Linux
$ java -version
openjdk version "11.0.3" 2019-04-16
OpenJDK Runtime Environment (build 11.0.3+
OpenJDK 64-Bit Server VM (build 11.0.3+
$ sudo apt-get install -y linux-tools-$(uname -r)/bionic-proposed
cat << EOF > hello.java out.printf( "X");
class hello {
static void printX() {
System.
}
public static void main(String[] args) {
int i;
for (i=0; i < 64000; i++)
printX();
}
}
EOF
$ javac hello.java /usr/lib/ linux-tools- 4.15.0- 53/libperf- jvmti.so hello > /dev/null .debug/ jit/java- jit-20190620. XXH3rSWT/ jit-4232. dump
$ sudo perf record -k 1 -e instructions:u java -agentpath:
java: jvmti: jitdump in /home/user/
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.136 MB perf.data (3368 samples) ]
$ sudo perf inject -i ./perf.data -j -o ./perf.data.jitted
$ sudo perf report -f -i ./perf.data.jitted |& fgrep printX
0.38% java jitted-4232-595.so [.] class hello.printX()