RFR: 8326446: The User and System of jdk.CPULoad on Apple M1 are inaccurate [v2]
Markus Grönlund
mgronlun at openjdk.org
Thu Feb 29 12:54:52 UTC 2024
On Fri, 23 Feb 2024 08:21:11 GMT, Long Yang <duke at openjdk.org> wrote:
>> hi
>>
>> I would like to fix this.
>>
>> As the description in [JDK-8326446](https://bugs.openjdk.org/browse/JDK-8326446).
>> JFR uses task_info() with flavor TASK_ABSOLUTETIME_INFO to read User and System time. it is not reliable on Apple m1.
>>
>> Libc provides the [times](https://man7.org/linux/man-pages/man2/times.2.html) function, which uses TASK_BASIC_INFO_COUNT and TASK_THREAD_TIMES_INFO_COUNT. It will also return the real time of the process, and the time unit is the same, which is suitable for solving this problem.
>>
>> I ran test/jdk/jdk/jfr/event/os/TestCPULoad.java and passed.
>>
>> I would appreciate it if you could review this.
>
> Long Yang has updated the pull request incrementally with one additional commit since the last revision:
>
> update copyright header
I think it needs a second review. Also, I am not very versed in Mac internals.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/17976#issuecomment-1971076962
More information about the hotspot-jfr-dev
mailing list