src/utils/LogCompilation/README
author herrick
Mon, 28 Oct 2019 11:21:43 -0400
branchJDK-8200758-branch
changeset 58818 a9316bb4c0e8
parent 48170 3af0ab7d1d90
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2126
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
     1
This is a very rough tool for parsing -XX:+LogCompilation output.
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
     2
It's main purpose is to recreate output similar to
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
     3
-XX:+PrintCompilation -XX:+PrintInlining output from a debug JVM.  It
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
     4
requires a 1.5 JDK to build and simply typing make should build it.
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
     5
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
     6
It produces a jar file, logc.jar, that can be run on the
20010
c66a7254680c 8023134: Rename VM LogFile to hotspot_pid{pid}.log (was hotspot.log)
vlivanov
parents: 14623
diff changeset
     7
HotSpot log (by default, hotspot_pid{pid}.log) from LogCompilation output like this:
2126
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
     8
20010
c66a7254680c 8023134: Rename VM LogFile to hotspot_pid{pid}.log (was hotspot.log)
vlivanov
parents: 14623
diff changeset
     9
  java -jar logc.jar hotspot_pid1234.log
2126
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
    10
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
    11
This will produce something like the normal PrintCompilation output.
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
    12
Adding the -i option with also report inlining like PrintInlining.
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
    13
20010
c66a7254680c 8023134: Rename VM LogFile to hotspot_pid{pid}.log (was hotspot.log)
vlivanov
parents: 14623
diff changeset
    14
More information about the LogCompilation output can be found at
2126
f6f30d1677a8 6807963: need tool to make sense of LogCompilaton output
never
parents:
diff changeset
    15
46763
1b0ff6953b5a 8185843: fix broken HotSpotInternals wiki links
kvn
parents: 20010
diff changeset
    16
https://wiki.openjdk.java.net/display/HotSpot/LogCompilation+overview
1b0ff6953b5a 8185843: fix broken HotSpotInternals wiki links
kvn
parents: 20010
diff changeset
    17
https://wiki.openjdk.java.net/display/HotSpot/PrintCompilation
1b0ff6953b5a 8185843: fix broken HotSpotInternals wiki links
kvn
parents: 20010
diff changeset
    18
https://wiki.openjdk.java.net/display/HotSpot/LogCompilation+tool
48170
3af0ab7d1d90 8192821: Make LogCompilation into a maven project
ecaspole
parents: 47216
diff changeset
    19
3af0ab7d1d90 8192821: Make LogCompilation into a maven project
ecaspole
parents: 47216
diff changeset
    20
The project layout is now for Maven. To build the project with Maven do:
3af0ab7d1d90 8192821: Make LogCompilation into a maven project
ecaspole
parents: 47216
diff changeset
    21
3af0ab7d1d90 8192821: Make LogCompilation into a maven project
ecaspole
parents: 47216
diff changeset
    22
  mvn clean install
3af0ab7d1d90 8192821: Make LogCompilation into a maven project
ecaspole
parents: 47216
diff changeset
    23
3af0ab7d1d90 8192821: Make LogCompilation into a maven project
ecaspole
parents: 47216
diff changeset
    24
The build also copies the resulting target jar to ./logc.jar for easy 
3af0ab7d1d90 8192821: Make LogCompilation into a maven project
ecaspole
parents: 47216
diff changeset
    25
interop with the Makefile build.