Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8268098

jdk.CPULoad event reports incorrect CPU usage inside a container

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: P4 P4
    • None
    • 16, 17
    • hotspot

      jdk.CPULoad event reports CPU usage.
      If JVM runs in a container which is limited CPU resource (quota, shares, cpu), it is incorrect.

      When I ran following program inside a container with `--cpuset-cpu=0,1`, I expected jdk.CPULoad event reports 50%, however it reported 25% because container host has 4 CPUs.

      ```
      public class InfiniteLoop{
        public static void main(String[] args){
          while(true){
          }
        }
      }
      ```

      jdk.CPULoad event uses the result from `get_cpu_load()` in os_perf_linux.cpp, but it does not consider cgroups.

            ysuenaga Yasumasa Suenaga
            ysuenaga Yasumasa Suenaga
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: