REXX para conocer el consumo de CPU

Todo lo relacionado con REXX en este ambiente.
Responder
Avatar de Usuario
ricgomez
Usuario avanzado
Usuario avanzado
Mensajes: 32
Registrado: 04 May 2008, 12:00
País: México
Ciudad: Distrito Federal
Ocupación: Jefe de area de sistemas
Contactar:

REXX para conocer el consumo de CPU

Mensaje por ricgomez » 27 Nov 2015, 00:06

Estimados,

Actualmente estoy programando un rexx que me permita saber el consumo actual de MSU de mi sistema así como el 4HRA. Hasta ahora he logrado:
- Obtener el Sysname
- Obtener el modelo y tipo
- Capacidad definida de MSU's para la Lpar
- 4HRA
- Y saber si la Lpar esta capped o no

El rexx no me lo he inventado yo, he tomado fragmentos de varios sitios en donde al final todos leen la Resource Control Table.

Sin embargo, hay un dato que me gustaría conocer pero no he encontrado como extraerlo por ningún lado y es el número de MSU's activas (en uso) en ese momento. El dato que necesito es el que aparece en la columna "MSU Act" del panel CPC Capacity de la opción 3>3 del Monitor III de RMF.

Con esto, la pregunta concreta sería ¿cómo conocer el numero de MSU's actuales de una partición?

Como apoyo a para ayudar a otros, comparto el rexx que actualmente estoy usando:

Código: Seleccionar todo

/* REXX */ 
/* Trace ?r                              */ 
/*********************************************************************/
CVT      = C2d(Storage(10,4))                /* point to CVT         */
RMCT     = C2d(Storage(D2x(CVT+604),4))      /* point to RMCT        */
RCT      = C2d(Storage(D2x(RMCT+228),4))     /* Resource Control Tbl */
RMCTCCT  = C2d(Storage(D2x(RMCT+4),4))       /* cpu mgmt control tbl */
                                                                       
CCVUTILP = C2d(Storage(D2x(RMCTCCT+102),2))  /* CPU Utilization      */
RCTLACS  = C2d(Storage(D2x(RCT+196),4))      /* 4 hr MSU average     */
RCTIMGWU = C2d(Storage(D2x(RCT+28),4))       /* Image defined MSUs   */
RCTCECWU = C2d(Storage(D2x(RCT+32),4))       /* CEC MSU Capacity     */
/*********************************************************************/
/*  The CPU model is stored in packed decimal format with no sign,   */
/*  so to make the model printable, it needs to be converted back    */
/*  to hex.                                                          */
MODEL    = C2d(Storage(D2x(CVT - 6),2))      /* point to cpu model   */
MODEL    = D2x(MODEL)                        /* convert back to hex  */
/*********************************************************************/
                                                         
CURRDATE = Date('S') 
CURRTIME = Time() 
SYSNAME  = MVSVAR('SYSNAME') 
CAPPED   = 'N' 
                                                         
PERCENT  = Format((RCTLACS/RCTIMGWU)*100,3,2) 
                                                         
If RCTLACS <> 0 then do 
  If RCTLACS >= RCTIMGWU & RCTIMGWU <> RCTCECWU then , 
    CAPPED = 'Y' 
End 

say SYSNAME CURRDATE CURRTIME, 
    'CpuModel='MODEL, 
    'MSU='RCTIMGWU, 
    'CPU_Utyl='CCVUTILP'%', 
    '4HRA='RCTLACS, 
    'Limit='PERCENT'%', 
    'Capp?='CAPPED 
Un saludo y de antemano gracias.
Gracias de antemano por su tiempo y respuestas,

Ricardo Gomez

dzavala
Usuario
Usuario
Mensajes: 3
Registrado: 26 Ene 2015, 05:49
País: EE.UU
Ciudad: Dallas
Ocupación: System Programmer

Re: REXX para conocer el consumo de CPU

Mensaje por dzavala » 19 Nov 2017, 17:43

Hola,

Queria preguntar come es que lo mencionas el REXX para verlo correr y que te de la informacion que vos necesitais.
Estoy por programmar un REXX para poder mover Modulos del diseno a probar sin ninguna mano del usuario o operador.
Hacer en Backup primera archivar los archivos y dejar la primera libreria en la concatenacion del CICS disponible
a los nuvos modulos.

Siceramente,

Dr. Z

elpantanero
Colaborador
Colaborador
Mensajes: 78
Registrado: 25 Oct 2007, 06:31
País: España
Ciudad: Madrid
Ocupación: Técnico en Sistemas

Re: REXX para conocer el consumo de CPU

Mensaje por elpantanero » 20 Nov 2017, 06:21

eso lo puedes obtener del RMF postprocesor en el REPORT(CPU)
dentro de este en PARTITION DATA REPORT
--------- PARTITION DATA ----------------- -- LOGICAL
----MSU---- -CAPPING-- -PROCESSOR
NAME S WGT DEF ACT DEF WLM% NUM TYPE
part1 A 10 9 1 YES 0.0 2.0 CP
part2 A 25 23 4 YES 0.0 2.0 CP
DRIVER A 5 1 0 YES 0.0 1.0 CP
part3 A 5 6 6 YES 0.0 2.0 CP
*PHYSICAL*
El Pantanero (el mas viejo de los dinosaurios del pantano)

Responder