On Wed, 17 Mar 2021 07:21:06 GMT, Lin Zang <lz...@openjdk.org> wrote:

> IMO, it is better to dump all array object in `write-through` mode, because 
> it could avoid memory consumption and performance issue when dumping large 
> array. And the original implementation of object dump works like 
> `write-through`, so this fix looks like sort of retrieve back to the original 
> behavior.

I guess I don't understand why you would want write-through for small arrays 
but not large objects. I also have to admit I don't fully grasp the purpose of 
"segment mode". I see the docs say:

 301  * A heap dump can optionally be generated as a sequence of heap dump
 302  * segments. This sequence is terminated by an end record. The additional
 303  * tags allowed by format "JAVA PROFILE 1.0.2" are:
 304  *
 305  * HPROF_HEAP_DUMP_SEGMENT  denote a heap dump segment
 306  *
 307  *               [heap dump sub-records]*
 308  *               The same sub-record types allowed by HPROF_HEAP_DUMP
 309  *
 310  * HPROF_HEAP_DUMP_END      denotes the end of a heap dump

But all this seems to be doing is grouping the HPROF_HEAP_DUMP records into an 
array rather than having them interspersed with other types of records. How 
does this help, and why would this mode not always be enabled?

-------------

PR: https://git.openjdk.java.net/jdk/pull/2803

Reply via email to