RFR: JDK-8030957 - AIX: Implement OperatingSystemMXBean.getSystemCpuLoad() and .getProcessCpuLoad() on AIX [v6]

Joachim Kern jkern at openjdk.org
Thu Sep 25 09:17:09 UTC 2025


On Fri, 29 Aug 2025 08:56:56 GMT, Suchismith Roy <sroy at openjdk.org> wrote:

>> JBS Issue : [JDK-8030957](https://bugs.openjdk.org/browse/JDK-8030957)
>> 
>> These two methods should be implemented in src/aix/native/sun/management/AixOperatingSystem.c (which has to be created).
>> 
>> getProcessCpuLoad() can be probably implemented in the same way like on Solaris be reading /proc/self/psinfo
>> 
>> For getSystemCpuLoad() we'll probalby have to use 'perfstat_cpu_total()' from libperf (see http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.prftools/doc/prftools/prftools07.htm#wq407)
>> 
>> Once this issue has been resolved the below two excludes must be removed from jdk/test/ProblemList.txt:
>> 
>> com/sun/management/OperatingSystemMXBean/GetProcessCpuLoad.java aix-all
>> com/sun/management/OperatingSystemMXBean/GetSystemCpuLoad.java aix-all
>
> Suchismith Roy has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 12 commits:
> 
>  - Merge branch 'openjdk:master' into cpuprocessload
>  - Thread safety,struct and perfInit()
>  - Thread safety,struct and perfInit()
>  - Update ProblemList.txt
>  - Merge branch 'master' into cpuprocessload
>  - Merge branch 'master' into cpuprocessload
>  - Update UnixOperatingSystem.c
>  - Merge branch 'openjdk:master' into cpuprocessload
>  - cleanup
>  - system cpu load
>  - ... and 2 more: https://git.openjdk.org/jdk/compare/86d6a2e0...46dcf313

src/jdk.management/aix/native/libmanagement_ext/UnixOperatingSystem.c line 134:

> 132:             cpu_load = MAX(cpu_load, 0.0);
> 133:             cpu_load = MIN(cpu_load, 1.0);
> 134:             cpu_load = (user_diff + sys_diff) / delta_time;

Why is the sequence here different to the sequence in Java_com_sun_management_internal_OperatingSystemImpl_getCpuLoad0 ?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/25332#discussion_r2378377387


More information about the serviceability-dev mailing list