RFR(XS): JDK-8114853 variable tracking size limit exceeded in vmStructs.cpp (original) (raw)

Dmitry Samersoff dmitry.samersoff at oracle.com
Fri Nov 20 19:36:17 UTC 2015


Coleen, Mikael,

The reason of turning off var-tracking-assignments for entire hotspot build is that this tracking (IMHO) desn't have much value for optimized hotspot code but turning it off slightly increase build speed and reduce the size of libjvm.debuginfo file.

Here is numbers:

With tracking (linux-x86_64-normal-server-fastdebug):

7114.640u 324.632s 32:14.35 384.5% 0+0k 0+0io 22pf+0w libjvm.debuginfo 405418192

Without tracking:

6756.573u 328.854s 31:54.13 370.1% 0+0k 0+0io 1900pf+0w libjvm.debuginfo 355457280

-Dmitry

On 2015-11-19 18:33, Coleen Phillimore wrote:

On 11/19/15 9:40 AM, Mikael Gerdin wrote: Hi,

On 2015-11-19 12:58, Dmitry Samersoff wrote: Everybody,

Please review: http://cr.openjdk.java.net/~dsamersoff/JDK-8114853/webrev.01/ Isn't it possible to set -fno-var-tracking-assignments for just vmstructs.cpp? In my opinion it's really helpful to have as much debug info as possible in the product binaries. Or even turn off -g entirely for vmStructs? It's not really debuggable anyway. Coleen /Mikael

Story: VTA fails on huge VMStructs::init() so this method is being compiled twice. VTA[1] allows compiler to emit DWARF-3 debugging information for local variable ever if this variable is optimized out at the cost of compilation time and compiler memory consumption. So I decided to turn it off for entire hotspot build to reduce memory footprint/increase compilation speed. 1. https://gcc.gnu.org/wiki/VarTrackingAssignments -Dmitry

-- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia



More information about the hotspot-runtime-dev mailing list