RFR: 8262386: resourcehogs/serviceability/sa/TestHeapDumpForLargeArray.java timed out
Chris Plummer
cjplummer at openjdk.java.net
Fri Mar 19 20:23:39 UTC 2021
On Wed, 17 Mar 2021 07:21:06 GMT, Lin Zang <lzang at 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
More information about the serviceability-dev
mailing list