RFR: 8254723: add diagnostic command to write Linux perf map file [v2]
Nick Gasson
ngasson at openjdk.java.net
Mon Oct 26 06:13:37 UTC 2020
On Thu, 22 Oct 2020 07:09:47 GMT, Nick Gasson <ngasson at openjdk.org> wrote:
>> Hi Nick,
>>
>> this is a very useful idea! I missed this in the past.
>>
>> Some remarks. I'll try to keep bikeshedding to a minimum since you already have enough input. Mostly ergonomics.
>>
>> 1) Like Alexey, I would really wish for an print-at-exit switch. The common naming seems to be xxxAtExit (so not, OnExit). "PrintXxx" seems to be printing stuff out to tty, "DumpXxxx" for writing separate files (e.g. CDS map). So I would name it DumpPerfMapAtExit.
>>
>> 2) Dumping to /tmp is unexpected for me, I would prefer if the default were dumping to the current directory. That seems to be the default for other files too (cds map, hs-err file etc).
>>
>> 3) Not necessary but nice would be a an option to specify location of the dump file.
>>
>> 4) I think it would be nice to have these switches always available, so real product switches. Which would require you to write up a small CSR but I still think it would make sense.
>>
>> Cheers, Thomas
>
>>
>> 1. Like Alexey, I would really wish for an print-at-exit switch. The common naming seems to be xxxAtExit (so not, OnExit). "PrintXxx" seems to be printing stuff out to tty, "DumpXxxx" for writing separate files (e.g. CDS map). So I would name it DumpPerfMapAtExit.
>>
>
> OK, makes sense.
>
>> 2. Dumping to /tmp is unexpected for me, I would prefer if the default were dumping to the current directory. That seems to be the default for other files too (cds map, hs-err file etc).
>>
>> 3. Not necessary but nice would be a an option to specify location of the dump file.
>>
>
> The `/tmp/perf-<pid>.map` is hardcoded into perf though ([see here](https://github.com/torvalds/linux/blob/master/tools/perf/util/map.c#L155)), so I don't think it's useful for the user to be able to change the location.
>
> I think we should use this option carefully because nmethod might be unloaded. So we should use this with `-XX:-UseCodeCacheFlushing`.
>
Thanks for the information. `-XX:+DumpPerfMapAtExit` will turn on `UseCodeCacheFlushing` if it's set to default.
-------------
PR: https://git.openjdk.java.net/jdk/pull/760
More information about the hotspot-compiler-dev
mailing list