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

Reduce polling of JVM due to jvmstat

XMLWordPrintable

    • generic
    • generic

      During the Solaris Desktop Summit this past week an issue was raised by multiple members of the Sun Ray team, in particular ###@###.###. The HotSpot JVM is performing poll() system calls every 50 milliseconds in order to sample performance counters for consumption by tools like jstat and jconsole. The fact that each individual JVM process wakes up 20 times per second is a significant scalability issue for systems like Sun Rays, even though very little work is performed on wakeup, due to the amount of kernel time required to implement these polls. A typical scenario involving 100 users on a single machine might involve some 300 java processes, estimating 3 java processes per user. Given that each one of these polls 20 times per second this amounts to 6000 process wakeups per second.

      Empirical evidence from real Sun Ray installations indicates that when roughly 100 users and thousands of processes are active, java is consistently in the top 20 consumers of CPU time even when the JVM is otherwise idle. Given that this is occurring solely for data collection purposes, regardless of whether the data is actually being inspected by the end user, it is imperative that a lower-cost mechanism be found.

            Unassigned Unassigned
            kbr Kenneth Russell (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: