Utilice rcapstat para registrar las estadísticas de límites de recursos. Supervisión del uso de recursos con rcapstat explica cómo utilizar el comando rcapstat para generar informes. En dicha sección también se describen las cabeceras de columna en el informe. La página del comando man rcapstat(1) también contiene esta información.
Las siguientes subsecciones utilizan ejemplos para ilustrar el modo en que se producen informes para fines específicos.
En este ejemplo, se definen límites para dos proyectos asociados con dos usuarios. user1 tiene un límite de 50 megabytes y user2 un límite de 10 megabytes.
El comando siguiente produce cinco informes a intervalos de muestreo de 5 segundos.
user1machine% rcapstat 5 5 id project nproc vm rss cap at avgat pg avgpg 112270 user1 24 123M 35M 50M 50M 0K 3312K 0K 78194 user2 1 2368K 1856K 10M 0K 0K 0K 0K id project nproc vm rss cap at avgat pg avgpg 112270 user1 24 123M 35M 50M 0K 0K 0K 0K 78194 user2 1 2368K 1856K 10M 0K 0K 0K 0K id project nproc vm rss cap at avgat pg avgpg 112270 user1 24 123M 35M 50M 0K 0K 0K 0K 78194 user2 1 2368K 1928K 10M 0K 0K 0K 0K id project nproc vm rss cap at avgat pg avgpg 112270 user1 24 123M 35M 50M 0K 0K 0K 0K 78194 user2 1 2368K 1928K 10M 0K 0K 0K 0K id project nproc vm rss cap at avgat pg avgpg 112270 user1 24 123M 35M 50M 0K 0K 0K 0K 78194 user2 1 2368K 1928K 10M 0K 0K 0K 0K |
Las tres primeras líneas de la salida constituyen el primer informe, que contiene el límite y la información del proyecto para los dos proyectos y las estadísticas de paginación desde el inicio de rcapd. Las columnas at y pg tienen un número mayor que cero para user1 y cero para user2, lo que indica que en algún punto del historial del daemon user1 ha superado su límite pero user2 no lo ha hecho.
Los informes subsiguientes no muestran ninguna actividad significativa.
En el ejemplo siguiente se muestra el user1 del proyecto, que fue un RSS que superó su límite.
El comando siguiente produce cinco informes a intervalos de muestreo de 5 segundos.
user1machine% rcapstat 5 5 |
id project nproc vm rss cap at avgat pg avgpg 376565 user1 3 6249M 6144M 6144M 690M 220M 5528K 2764K 376565 user1 3 6249M 6144M 6144M 0M 131M 4912K 1637K 376565 user1 3 6249M 6171M 6144M 27M 147M 6048K 2016K 376565 user1 3 6249M 6146M 6144M 4872M 174M 4368K 1456K 376565 user1 3 6249M 6156M 6144M 12M 161M 3376K 1125K |
El proyecto user1 tiene tres procesos que utilizan activamente la memoria física. Los valores positivos de la columna pg indican que rcapd está extrayendo de forma coherente la memoria al intentar alcanzar el límite bajando el uso de la memoria física de los procesos del proyecto. Sin embargo, rcapd no consigue mantener el RSS por debajo del valor límite. Esto se indica mediante los valores rss variables que no muestran una disminución correspondiente. En cuanto se extrae la memoria, la carga de trabajo vuelve a utilizarla y el número de RSS vuelve a subir. Esto significa que toda la memoria residente del proyecto se está utilizando de forma activa y el tamaño del conjunto de trabajo (WSS) es superior al límite. De este modo, rcapd fuerza la extracción de parte del conjunto de trabajo para cumplir el límite. Con esta condición, el sistema seguirá experimentando altos índices de fallos de paginación y la E/S asociada, hasta que tenga lugar una de las condiciones siguientes:
Se reduzca el WSS.
Se aumente el límite.
La aplicación cambie su patrón de acceso a la memoria.
En esta situación, la reducción del intervalo de muestreo podría disminuir la discrepancia entre el valor de RSS y el límite al hacer que rcapd muestree la carga de trabajo y aplique los límites con mayor frecuencia.
Se produce un fallo de página cuando debe crearse una página o el sistema debe copiar una página desde un dispositivo de intercambio.
El ejemplo siguiente es una continuación del anterior, y utiliza el mismo proyecto.
El ejemplo anterior muestra que el proyecto user1 está utilizando más memoria física de lo que permite su límite. Este ejemplo muestra cuánta memoria requiere la carga de trabajo del proyecto.
user1machine% rcapstat 5 5 id project nproc vm rss cap at avgat pg avgpg 376565 user1 3 6249M 6144M 6144M 690M 0K 689M 0K 376565 user1 3 6249M 6144M 6144M 0K 0K 0K 0K 376565 user1 3 6249M 6171M 6144M 27M 0K 27M 0K 376565 user1 3 6249M 6146M 6144M 4872K 0K 4816K 0K 376565 user1 3 6249M 6156M 6144M 12M 0K 12M 0K 376565 user1 3 6249M 6150M 6144M 5848K 0K 5816K 0K 376565 user1 3 6249M 6155M 6144M 11M 0K 11M 0K 376565 user1 3 6249M 6150M 10G 32K 0K 32K 0K 376565 user1 3 6249M 6214M 10G 0K 0K 0K 0K 376565 user1 3 6249M 6247M 10G 0K 0K 0K 0K 376565 user1 3 6249M 6247M 10G 0K 0K 0K 0K 376565 user1 3 6249M 6247M 10G 0K 0K 0K 0K 376565 user1 3 6249M 6247M 10G 0K 0K 0K 0K 376565 user1 3 6249M 6247M 10G 0K 0K 0K 0K 376565 user1 3 6249M 6247M 10G 0K 0K 0K 0K |
A mitad del ciclo, el límite del proyecto user1 se aumenta de 6 a 10 gigabytes. Este aumento detiene la aplicación del límite y permite el aumento del tamaño del conjunto residente, limitado sólo por los demás procesos y la cantidad de memoria del equipo. La columna rss podría estabilizarse para reflejar el tamaño del conjunto de trabajo del proyecto (WSS), en este caso 6247M. Se trata del valor de límite mínimo que permite que los procesos del proyecto funcionen sin incurrir en fallos de página continuos.
Mientras que el límite de user1 es de 6 s, en cada intervalo de 5 segundos el RSS disminuye y la E/S aumenta mientras rcapd extrae parte de la memoria de la carga de trabajo. Un poco después de completar la extracción, la carga de trabajo, que necesita dichas páginas, las vuelve a insertar mientras sigue ejecutándose. Este ciclo se repite hasta que se eleva el límite a 10 gigabytes, aproximadamente por la mitad del ejemplo. El RSS se estabiliza en 6,1 gigabytes. Dado que el RSS de la carga de trabajo está ahora por debajo del límite, no se produce ninguna paginación adicional. También se detiene la E/S asociada con la paginación. De este modo, el proyecto necesita 6,1 gigabytes para llevar a cabo el trabajo que estaba realizando en el momento en que se observó.
Consulte también las páginas del comando man vmstat(1M) y iostat(1M).
La opción -g de rcapstat permite registrar lo siguiente:
Uso actual de la memoria física como porcentaje de la memoria física instalada en el sistema
Umbral de aplicación del límite de memoria del sistema definido por rcapadm
La opción -g imprime una línea de aplicación del límite y el uso de la memoria al final del informe para cada intervalo.
# rcapstat -g id project nproc vm rss cap at avgat pg avgpg 376565 rcap 0 0K 0K 10G 0K 0K 0K 0K physical memory utilization: 55% cap enforcement threshold: 0% id project nproc vm rss cap at avgat pg avgpg 376565 rcap 0 0K 0K 10G 0K 0K 0K 0K physical memory utilization: 55% cap enforcement threshold: 0% |