< prev index next >

src/hotspot/os/aix/libperfstat_aix.hpp

Print this page
rev 48720 : 8196487: AIX: os::get_summary_cpu_info does not need to call into libperfstat
   1 /*
   2  * Copyright (c) 2012, 2016 SAP SE. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *


 925     u_longlong_t pool_idle_time;      /* pool idle time = number of clock tics a processor in the shared pool was idle */
 926     u_longlong_t pcpu_tics_user;      /* raw number of physical processor tics in user mode */
 927     u_longlong_t pcpu_tics_sys;       /* raw number of physical processor tics in system mode */
 928     u_longlong_t pcpu_tics_idle;      /* raw number of physical processor tics idle */
 929     u_longlong_t pcpu_tics_wait;      /* raw number of physical processor tics waiting for I/O */
 930 
 931     u_longlong_t true_memory;          /* True Memory Size in 4KB pages */
 932     u_longlong_t expanded_memory;      /* Expanded Memory Size in 4KB pages */
 933     u_longlong_t target_memexp_factr;  /* Target Memory Expansion Factor scaled by 100 */
 934     u_longlong_t current_memexp_factr; /* Current Memory Expansion Factor scaled by 100 */
 935     u_longlong_t cmcs_total_time;      /* Total CPU time spent due to active memory expansion */
 936   };
 937 
 938   // Result struct for get_cpuinfo().
 939   struct cpuinfo_t {
 940     char description[IDENTIFIER_LENGTH];  // processor description (type/official name)
 941     u_longlong_t processorHZ;             // processor speed in Hz
 942     int ncpus;                            // number of active logical processors
 943     double loadavg[3];                    // (1<<SBITS) times the average number of runnables processes during the last 1, 5 and 15 minutes.
 944                                           // To calculate the load average, divide the numbers by (1<<SBITS). SBITS is defined in <sys/proc.h>.
 945     char version[20];                     // processor version from _system_configuration (sys/systemcfg.h)
 946     unsigned long long user_clock_ticks;  // raw total number of clock ticks spent in user mode
 947     unsigned long long sys_clock_ticks;   // raw total number of clock ticks spent in system mode
 948     unsigned long long idle_clock_ticks;  // raw total number of clock ticks spent idle
 949     unsigned long long wait_clock_ticks;  // raw total number of clock ticks spent waiting for I/O
 950   };
 951 
 952   // Result struct for get_wparinfo().
 953   struct wparinfo_t {
 954     char name[MAXCORRALNAMELEN+1];  /* name of the Workload Partition */
 955     unsigned short wpar_id;         /* workload partition identifier */
 956     unsigned app_wpar :1;           /* Application WPAR */
 957     unsigned cpu_rset :1;           /* WPAR restricted to CPU resource set */
 958     unsigned cpu_xrset:1;           /* WPAR restricted to CPU Exclusive resource set */
 959     unsigned cpu_limits :1;         /* CPU resource limits enforced */
 960     unsigned mem_limits :1;         /* Memory resource limits enforced */
 961     int cpu_limit;                  /* CPU limit in 100ths of % - 1..10000 */
 962     int mem_limit;                  /* Memory limit in 100ths of % - 1..10000 */
 963   };
 964 
 965   static bool get_partitioninfo(partitioninfo_t* ppi);
 966   static bool get_cpuinfo(cpuinfo_t* pci);
 967   static bool get_wparinfo(wparinfo_t* pwi);
 968 
 969 };
 970 
 971 #endif // OS_AIX_VM_LIBPERFSTAT_AIX_HPP
   1 /*
   2  * Copyright (c) 2012, 2018 SAP SE. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *


 925     u_longlong_t pool_idle_time;      /* pool idle time = number of clock tics a processor in the shared pool was idle */
 926     u_longlong_t pcpu_tics_user;      /* raw number of physical processor tics in user mode */
 927     u_longlong_t pcpu_tics_sys;       /* raw number of physical processor tics in system mode */
 928     u_longlong_t pcpu_tics_idle;      /* raw number of physical processor tics idle */
 929     u_longlong_t pcpu_tics_wait;      /* raw number of physical processor tics waiting for I/O */
 930 
 931     u_longlong_t true_memory;          /* True Memory Size in 4KB pages */
 932     u_longlong_t expanded_memory;      /* Expanded Memory Size in 4KB pages */
 933     u_longlong_t target_memexp_factr;  /* Target Memory Expansion Factor scaled by 100 */
 934     u_longlong_t current_memexp_factr; /* Current Memory Expansion Factor scaled by 100 */
 935     u_longlong_t cmcs_total_time;      /* Total CPU time spent due to active memory expansion */
 936   };
 937 
 938   // Result struct for get_cpuinfo().
 939   struct cpuinfo_t {
 940     char description[IDENTIFIER_LENGTH];  // processor description (type/official name)
 941     u_longlong_t processorHZ;             // processor speed in Hz
 942     int ncpus;                            // number of active logical processors
 943     double loadavg[3];                    // (1<<SBITS) times the average number of runnables processes during the last 1, 5 and 15 minutes.
 944                                           // To calculate the load average, divide the numbers by (1<<SBITS). SBITS is defined in <sys/proc.h>.

 945     unsigned long long user_clock_ticks;  // raw total number of clock ticks spent in user mode
 946     unsigned long long sys_clock_ticks;   // raw total number of clock ticks spent in system mode
 947     unsigned long long idle_clock_ticks;  // raw total number of clock ticks spent idle
 948     unsigned long long wait_clock_ticks;  // raw total number of clock ticks spent waiting for I/O
 949   };
 950 
 951   // Result struct for get_wparinfo().
 952   struct wparinfo_t {
 953     char name[MAXCORRALNAMELEN+1];  /* name of the Workload Partition */
 954     unsigned short wpar_id;         /* workload partition identifier */
 955     unsigned app_wpar :1;           /* Application WPAR */
 956     unsigned cpu_rset :1;           /* WPAR restricted to CPU resource set */
 957     unsigned cpu_xrset:1;           /* WPAR restricted to CPU Exclusive resource set */
 958     unsigned cpu_limits :1;         /* CPU resource limits enforced */
 959     unsigned mem_limits :1;         /* Memory resource limits enforced */
 960     int cpu_limit;                  /* CPU limit in 100ths of % - 1..10000 */
 961     int mem_limit;                  /* Memory limit in 100ths of % - 1..10000 */
 962   };
 963 
 964   static bool get_partitioninfo(partitioninfo_t* ppi);
 965   static bool get_cpuinfo(cpuinfo_t* pci);
 966   static bool get_wparinfo(wparinfo_t* pwi);

 967 };
 968 
 969 #endif // OS_AIX_VM_LIBPERFSTAT_AIX_HPP
< prev index next >