Re: Significado de %CPU reportado por top

2009-02-04 Por tema Aldrin Martoq
On Thu, 2009-02-05 at 01:59 +0100, Miguel Oyarzo O. wrote:
 Aldrin Martoq escribió:
  On Tue, 2009-02-03 at 15:41 -0700, Alejandro Weinstein wrote:
  Estoy un poco confundido con el significado de %CPU reportado por top.
  La siguiente es la definicion del manual:
 k: %CPU  --  CPU usage
The task's share of the elapsed  CPU  time  since  the  last  
  screen
update,  expressed as a percentage of total CPU time.  In a true 
  SMP
environment, if 'Irix mode' is Off, top  will  operate  in  
  'Solaris
mode'  where  a task's cpu usage will be divided by the total 
  number
of CPUs.  You toggle 'Irix/Solaris' modes with the  'I'  
  interactive
command.
  
  En castellano: El % de CPU indica el porcentaje de uso de un proceso
  _por CPU_.
 No dice eso, el parametro muestra el % de tiempo de CPU que las tareas 
 de ese proceso han usado entre un refresco y otro.

Sorry, no pretendia decir que tradujeran mal, sino explicar cual es el
comportamiento. Ejemplisticamente:


El Irix mode On es el default, un ejemplo aca:

top - 11:58:55 up 1 day, 40 min,  2 users,  load average: 0.43, 0.12, 0.04
Tasks:  62 total,   2 running,  60 sleeping,   0 stopped,   0 zombie
Cpu0  : 19.1%us, 51.5%sy,  0.0%ni, 27.7%id,  1.0%wa,  0.0%hi,  0.7%si,  0.0%st
Cpu1  : 12.9%us, 65.7%sy,  0.0%ni, 18.2%id,  2.6%wa,  0.0%hi,  0.7%si,  0.0%st
Irix mode On 
  PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
16313 root  20   0  566m 190m 4096 S  148 37.8   0:33.08 java   

Tengo 2 cpu's, en irix mode eso significa que tengo 200% de CPU. Si
sumas el idle, te da 45.9% si a eso le sumas el 148% de cpu te da un
193%. El resto (7%) son otros procesos/tareas.




Ahora un ejemplo en Irix mode Off (presionas 'I'):

top - 12:06:14 up 1 day, 48 min,  2 users,  load average: 0.77, 0.36, 0.17
Tasks:  62 total,   2 running,  60 sleeping,   0 stopped,   0 zombie
Cpu(s): 28.0%us, 56.9%sy,  0.0%ni, 11.3%id,  1.2%wa,  0.2%hi,  2.5%si,  0.0%st
Irix mode Off 
  PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
16513 root  20   0  571m 188m 4112 S 85.2 37.5   0:51.27 java   


En modo no-Irix top reporta el % de cpu relativo al sistema global, es
decir jamas sobrepasara el 100%. Si sumas el idle mas el java 11.3% +
85.2% te da 96.5%. El resto (3.5%) son otros procesos/tareas.


   Si tienes un programa multi-thread ocupando el 100% de 3
  CPU's, entonces su % de CPU es 300%.
 No, Si es 1 programa MThR que usará las 3 CPUs este siempre usara el 
 100% de ella (no importa lo que hagas, los ciclos de CPUs no se 
 desperdician), pero top podria repotar un 10% de uso de CPU entre 
 refresco y refresco (tareas rapiditas de ejecutar)
 Si disminuyes tu tiempo de refreco, top te mostrará mayor tiempo de 
 utilizacion entre cada refresco.

Nones, el % de cpu _no depende_ del intervalo en que mides!!
[En realidad si, ya que top gasta cpu mientras mide, pero descartemos
los efectos cuanticos ;)]


-- 
Aldrin Martoq amar...@dcc.uchile.cl
http://aldrin.martoq.cl/videopodcast/ http://aldrin.martoq.cl/techblog/


signature.asc
Description: This is a digitally signed message part


Re: Significado de %CPU reportado por top

2009-02-04 Por tema Alejandro Weinstein
2009/2/3 Aldrin Martoq amar...@dcc.uchile.cl:
 Y esta es una captura de top
 Tasks: 128 total,   2 running, 126 sleeping,   0 stopped,   0 zombie
 Cpu(s): 13.5%us,  1.8%sy,  0.0%ni, 84.7%id,  0.0%wa,  0.0%hi,  0.0%si,  
 0.0%st
 Mem:   2062952k total,   934044k used,  1128908k free,29032k buffers
 Swap:  2008084k total,0k used,  2008084k free,   335764k cached

 Presiona 1 y arriba te dara el detalle de cada CPU...


   PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
 10030 ajw   20   0 67632  23m 7360 S   22  1.2   0:09.54 python

 Tu programa es multithread y ocupa ~ el 13% del sistema global...
 Presiona I y veras lo que quieres.

OK. Viendo el detalle por CPU los numeros tienen mas sentido. Python y
firefox suman 33%, que corresponde al uso de CPU1. Xorg y
gnome-terminal suman 8. Esto es mas que el uso de CPU0. Pero puede ser
un problema de muestreo tal vez, o no?

Tambien agregue el campo P, que indica en que procesador esta
corriendo el proceso. No calza mucho, ya que muestra a python en el
CPU0, que tienen solo 3%. Se puede explicar esto por como top muestrea
el sistema? Despues de todo es una foto de lo que paso el ultimo
segundo, y supongo que en un segundo el proceso puede haberse
ejecutado en distintos CPUs.

Captura de top:

Tasks: 128 total,   1 running, 127 sleeping,   0 stopped,   0 zombie
Cpu0  :  3.0%us,  0.0%sy,  0.0%ni, 97.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  : 33.3%us,  1.9%sy,  0.0%ni, 64.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2062952k total,   922048k used,  1140904k free,59696k buffers
Swap:  2008084k total,0k used,  2008084k free,   331584k cached

  PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  P COMMAND
 7076 ajw   20   0 69972  26m 7364 S   30  1.3   8:53.24 0 python
 5360 root  20   0  292m  25m 8088 S6  1.2   3:37.27 1 Xorg
 6057 ajw   20   0  247m 100m  26m S3  5.0   2:29.63 0 firefox
 6050 ajw   20   0 99.5m  24m  12m S2  1.2   0:06.00 1 gnome-terminal
1 root  20   0  3056 1888  564 S0  0.1   0:01.24 1 init

Alejandro.


Re: Significado de %CPU reportado por top

2009-02-04 Por tema Alejandro Weinstein
2009/2/3 Aldrin Martoq amar...@dcc.uchile.cl:
   PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
 10030 ajw   20   0 67632  23m 7360 S   22  1.2   0:09.54 python

 Tu programa es multithread y ocupa ~ el 13% del sistema global...
 Presiona I y veras lo que quieres.

Como supiste que el programa es multithread? Clarividencia :) ?

Alejandro.


Re: Significado de %CPU reportado por top

2009-02-04 Por tema Alejandro Weinstein
2009/2/4 Alejandro Weinstein alejandro.weinst...@gmail.com:
 OK. Viendo el detalle por CPU los numeros tienen mas sentido

Ahora estoy confundido otra vez. La siguiente es una captura de top,
en una maquina con UNA cpu:

Tasks:  61 total,   2 running,  59 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.3%us,  0.2%sy,  0.0%ni, 99.4%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:507380k total,87544k used,   419836k free, 5084k buffers
Swap:   385520k total,0k used,   385520k free,34484k cached

  PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
 4370 ajw   20   0  102m 9.9m 4200 S 23.7  2.0   0:47.09 python
 4341 ajw   20   0 14996 4296 2300 S  1.7  0.8   0:03.99 python
1 root  20   0  2844 1696  548 S  0.0  0.3   0:01.57 init

Tengo Cpu0: 0.3%. y uno de los procesos python usando 23.7%.

Como cuadran estos numeros? Significa que el proceso uso el 23.7% del 0.3%?

Alejandro.


Re: Significado de %CPU reportado por top

2009-02-04 Por tema Miguel Oyarzo O.

Alejandro Weinstein escribió:

2009/2/4 Alejandro Weinstein alejandro.weinst...@gmail.com:

OK. Viendo el detalle por CPU los numeros tienen mas sentido


Ahora estoy confundido otra vez. La siguiente es una captura de top,
en una maquina con UNA cpu:

Tasks:  61 total,   2 running,  59 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.3%us,  0.2%sy,  0.0%ni, 99.4%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:507380k total,87544k used,   419836k free, 5084k buffers
Swap:   385520k total,0k used,   385520k free,34484k cached

  PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
 4370 ajw   20   0  102m 9.9m 4200 S 23.7  2.0   0:47.09 python
 4341 ajw   20   0 14996 4296 2300 S  1.7  0.8   0:03.99 python
1 root  20   0  2844 1696  548 S  0.0  0.3   0:01.57 init

Tengo Cpu0: 0.3%. y uno de los procesos python usando 23.7%.

Como cuadran estos numeros? Significa que el proceso uso el 23.7% del 0.3%?



0.3% es el 30% de ocupacion de la CPU sumando todos los procesos durante 
ese refresco de pantalla.

23.7% representa el tiempo de uso de esa tarea en paticular.


Atte

Miguel Oyarzo O.
Austro Internet S.A.
Punta Arenas


Re: Significado de %CPU reportado por top

2009-02-04 Por tema Alejandro Weinstein
On Thu, Feb 5, 2009 at 5:06 AM, Miguel Oyarzo O. ad...@aim.cl wrote:
 Alejandro Weinstein escribió:

 2009/2/4 Alejandro Weinstein alejandro.weinst...@gmail.com:

 OK. Viendo el detalle por CPU los numeros tienen mas sentido

 Ahora estoy confundido otra vez. La siguiente es una captura de top,
 en una maquina con UNA cpu:

 Tasks:  61 total,   2 running,  59 sleeping,   0 stopped,   0 zombie
 Cpu0  :  0.3%us,  0.2%sy,  0.0%ni, 99.4%id,  0.0%wa,  0.0%hi,  0.0%si,
  0.0%st
 Mem:507380k total,87544k used,   419836k free, 5084k buffers
 Swap:   385520k total,0k used,   385520k free,34484k cached

  PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
  4370 ajw   20   0  102m 9.9m 4200 S 23.7  2.0   0:47.09 python
  4341 ajw   20   0 14996 4296 2300 S  1.7  0.8   0:03.99 python
1 root  20   0  2844 1696  548 S  0.0  0.3   0:01.57 init

 Tengo Cpu0: 0.3%. y uno de los procesos python usando 23.7%.

 Como cuadran estos numeros? Significa que el proceso uso el 23.7% del
 0.3%?


 0.3% es el 30% de ocupacion de la CPU sumando todos los procesos durante ese
 refresco de pantalla.

De donde sale el 30%?



Re: Significado de %CPU reportado por top

2009-02-04 Por tema Aldrin Martoq
On Thu, 2009-02-05 at 13:06 +0100, Miguel Oyarzo O. wrote:
 Alejandro Weinstein escribió:
  Ahora estoy confundido otra vez. La siguiente es una captura de top,
  en una maquina con UNA cpu:
  Tasks:  61 total,   2 running,  59 sleeping,   0 stopped,   0 zombie
  Cpu0  :  0.3%us,  0.2%sy,  0.0%ni, 99.4%id,  0.0%wa,  0.0%hi,  0.0%si,  
  0.0%st
  Mem:507380k total,87544k used,   419836k free, 5084k buffers
  Swap:   385520k total,0k used,   385520k free,34484k cached
PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
   4370 ajw   20   0  102m 9.9m 4200 S 23.7  2.0   0:47.09 python
   4341 ajw   20   0 14996 4296 2300 S  1.7  0.8   0:03.99 python
  1 root  20   0  2844 1696  548 S  0.0  0.3   0:01.57 init
  Tengo Cpu0: 0.3%. y uno de los procesos python usando 23.7%.
  Como cuadran estos numeros? Significa que el proceso uso el 23.7% del 0.3%?

No cuadran porque los contadores se sacan de _distintas partes_ y en
_distintos instantes_, ni siquiera la linea de arriba te da 100%:
0.3%user + 0.2%sys +99.4%idle == 99.9%.

Todo es calculado separadamente (global y por proceso) y debes tomarlo
de esa forma. Un ejemplo es compilar el kernel:

top - 14:25:42 up  3:26,  9 users,  load average: 2.45, 2.07, 1.24
Tasks: 207 total,   4 running, 202 sleeping,   0 stopped,   1 zombie
Cpu0  : 52.9%us, 15.6%sy,  0.0%ni,  0.0%id, 30.9%wa,  0.3%hi,  0.3%si,  0.0%st
Mem:   2007220k total,  1821260k used,   185960k free,52756k buffers
Swap:  2112536k total, 5156k used,  2107380k free,   962488k cached
  PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
   
12729 amartoq   20   0 19024  11m 3368 R  5.3  0.6   0:00.16 cc1
   
12234 root  10 -10  493m 253m 244m S  2.0 12.9   3:39.70 vmware-vmx 
   
11437 amartoq   20   0  242m  96m  26m S  1.7  4.9   1:46.67 firefox
   
 6528 root  20   0  255m  88m  26m S  1.3  4.5   7:52.91 Xorg 

La CPU estuvo al 100% durante el intervalo (5 secs), pero si miras la
lista de procesos no supera el 10% de cpu . En este caso es porque los
programas que utilizaron CPU ya no estan corriendo; pero todo esta
correcto dentro de su contexto (4 running tampoco cuadra y asi ...).




Mi apuesta en este caso es que tu maquina es un notebook que varia la
frecuencia de CPU y tanto la frecuencia de la CPU como el uso de tu
programa deben estar saltando, quizas podrias intentar fijar la
frecuencia y tendras resultados mas estables; puedes intentar el
cpufreq-applet de gnome o configurar
en /sys/devices/system/cpu/cpu0/cpufreq/.


 0.3% es el 30% de ocupacion de la CPU sumando todos los procesos durante 
 ese refresco de pantalla.
 23.7% representa el tiempo de uso de esa tarea en paticular.

0.3% es solo el porcentaje de cpu gastado en userland. Si quieres
saber cuanto de cpu se utiliza, es mejor restar 100% al idle == 0.6%.

Tu 30% no tiene sentido, 0.3% es 0.3% en todas partes.


-- 
Aldrin Martoq amar...@dcc.uchile.cl
http://aldrin.martoq.cl/videopodcast/ http://aldrin.martoq.cl/techblog/


signature.asc
Description: This is a digitally signed message part


Re: Significado de %CPU reportado por top

2009-02-04 Por tema Miguel Oyarzo O.

Alejandro Weinstein escribió:

On Thu, Feb 5, 2009 at 5:06 AM, Miguel Oyarzo O. ad...@aim.cl wrote:

Alejandro Weinstein escribió:

2009/2/4 Alejandro Weinstein alejandro.weinst...@gmail.com:

OK. Viendo el detalle por CPU los numeros tienen mas sentido

Ahora estoy confundido otra vez. La siguiente es una captura de top,
en una maquina con UNA cpu:

Tasks:  61 total,   2 running,  59 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.3%us,  0.2%sy,  0.0%ni, 99.4%id,  0.0%wa,  0.0%hi,  0.0%si,
 0.0%st
Mem:507380k total,87544k used,   419836k free, 5084k buffers
Swap:   385520k total,0k used,   385520k free,34484k cached

 PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
 4370 ajw   20   0  102m 9.9m 4200 S 23.7  2.0   0:47.09 python
 4341 ajw   20   0 14996 4296 2300 S  1.7  0.8   0:03.99 python
   1 root  20   0  2844 1696  548 S  0.0  0.3   0:01.57 init

Tengo Cpu0: 0.3%. y uno de los procesos python usando 23.7%.

Como cuadran estos numeros? Significa que el proceso uso el 23.7% del
0.3%?


0.3% es el 30% de ocupacion de la CPU sumando todos los procesos durante ese
refresco de pantalla.


De donde sale el 30%?


Olvidate de mi respuesta anterior, me confundi con otra cosa

Ese indicador solo te muestra el tiempo que la CPU uso en los procesos 
de usuarios (los que consumen algo relevante de CPU)


Saludos,

Miguel Oyarzo O.
Austro Internet S.A.
Punta Arenas





Re: orden de activacionNIC

2009-02-04 Por tema Lista UTFSM
hummm .. si es capaz de saber quien es quien en las tarejetas ... por 
que no pone la que quiere iniciar primero en el slot 1 y asi 
sucesivamente ...los pci se inician en secuencia ..


Aldrin Martoq escribió:

On Tue, 2009-02-03 at 15:41 -0500, Eduardo Silva wrote:
  

http://www.science.uva.nl/research/air/wiki/LogicalInterfaceNames




La pregunta original indica que quiere levantar eth1, eth2, eth0 en ese
orden; no que tiene problemas de identificacion de cual ethX es que
tarjeta.


  

2009/2/3 Aldrin Martoq amar...@dcc.uchile.cl


On Tue, 2009-02-03 at 16:53 -0300, Juan Manuel Doren wrote:
  

El día 3 de febrero de 2009 14:56, Juan Carlos Rojas
jro...@conicyt.cl escribió:


Hola listeros,  tengo un servidor con tres NIC eth0 eth1 y eth2, como
  

puedo indicarle al sistema que primero active la eth1 luego la eth2 y
finalmente la eth0.
  

puedes meterle mano al /etc/rc.d/init.d/network
ese script levanta las interfaces, pero te sugiero _enfaticamente_ que
busques alternativas


Mejor que explique porque necesita levantar una interfaz despues de
otra ... hasta donde he visto, da lo mismo que interfaz se levanta
primero.
  


  


Re: orden de activacionNIC

2009-02-04 Por tema Lista UTFSM



Horst H. von Brand escribió:

Juan Carlos Rojas jro...@conicyt.cl wrote:

  

Hola listeros, tengo un servidor con tres NIC eth0 eth1 y eth2, como
puedo indicarle al sistema que primero active la eth1 luego la eth2 y
finalmente la eth0.



Picando BIOS.

  

Tendre que utilizar ifup e ifdown o existe algun archivo que editar que
me de una manera mas elegante.



Oh! Te refieres a configurar las interfases para IP.

Para que diantres requieres eso?
  
Puede se que las tarjetas no sean iguales .. que se yo una de giga o de 
fibra y las otra coaxial (ja ja) ... y por un asundo de dhcp quiere ese 
orden ...

o bien pude ser que se soño con esa configuracion y listo 
pero alguien sabe como se puede hacer ...



Re: orden de activacionNIC

2009-02-04 Por tema Pedro GM
El mié, 04-02-2009 a las 18:05 -0300, Lista UTFSM escribió:
 
 Horst H. von Brand escribió:
  Juan Carlos Rojas jro...@conicyt.cl wrote:
 

  Hola listeros, tengo un servidor con tres NIC eth0 eth1 y eth2, como
  puedo indicarle al sistema que primero active la eth1 luego la eth2 y
  finalmente la eth0.
  
 
  Picando BIOS.
 

  Tendre que utilizar ifup e ifdown o existe algun archivo que editar que
  me de una manera mas elegante.
  
 
  Oh! Te refieres a configurar las interfases para IP.
 
  Para que diantres requieres eso?

 Puede se que las tarjetas no sean iguales .. que se yo una de giga o de 
 fibra y las otra coaxial (ja ja) ... y por un asundo de dhcp quiere ese 
 orden ...
 o bien pude ser que se soño con esa configuracion y listo 
 pero alguien sabe como se puede hacer ...
 

En lo unico que se me ocurre en que sea util el orden de encendido es en
un router ejecutando OSPF... (y se me acaban las opciones...)

ifdown e ifup en un script es la solucion carretera para ese caso...

en mi experiencia (que no es mucha ) no conozco algun orden de encendido
salvo el numero de la interfaz si todas son del mismo tipo (ej: eth0,
eth1,eth2), por lo que la solución de asociar el nombre con el módulo
pero si son interfaces identicas (tipo y fabricante) no se como
hacerlo ..
-- 
::Pedro::GM::
User #397462
http://counter.li.org




Re: orden de activacionNIC

2009-02-04 Por tema Miguel Oyarzo O.

Lista UTFSM escribió:
hummm .. si es capaz de saber quien es quien en las tarejetas ... por 
que no pone la que quiere iniciar primero en el slot 1 y asi 
sucesivamente ...los pci se inician en secuencia ..




No es por ser poco tolerante pero...
Ponte un nombre te dicen!

Es poco interesante responderle a alguien deniminado Lista,
ocultas algo?


===
Miguel Oyarzo O.
Austro Internet S.A.
Punta Arenas


Re: logs del cron y mail no coinciden

2009-02-04 Por tema CELB
eso lo solucionas con el man de cada aplicación !!!


El jue, 29-01-2009 a las 23:31 +0100, Miguel Oyarzo O. escribió:
 Victor Hugo dos Santos escribió:
  Hola a todos,
  
  Tengo las siguientes linea en el archivo /etc/cron.d/dbnet
  
  =
  $ sudo cat /etc/cron.d/dbnet
  # Detencion de los servicios de DBNET
  0 3 * * * root /etc/init.d/dbnet stop
  0 3 * * * root echo hola 3:0 | mail root
  0 5 * * * root /etc/init.d/dbnet start
  0 5 * * * root echo hola 5:0 | mail root
  =
  
  Los comandos echos lo puse, para poder depurar el problema y
  funciona correctamente a la hora estipulada
  pero algo raro, pasa con los comandos start/stop.. bueno, el start
  especificamente, pues este es lo que tengo en los logs (/var/log/cron)
  
  =
  $ sudo cat cron cron.1 | egrep '(init|hola)'
  Jan 25 03:00:01 dbnetbd crond[25594]: (root) CMD (echo hola 3:0 | mail 
  root )
  Jan 25 03:00:01 dbnetbd crond[25596]: (root) CMD (/etc/init.d/dbnet stop)
  Jan 25 05:00:01 dbnetbd crond[19285]: (root) CMD (echo hola 5:0 | mail 
  root )
  Jan 25 05:00:01 dbnetbd crond[19287]: (root) CMD (/etc/init.d/dbnet start )
  
  Jan 26 03:00:02 dbnetbd crond[19454]: (root) CMD (echo hola 3:0 | mail 
  root )
  Jan 26 03:00:02 dbnetbd crond[19457]: (root) CMD (/etc/init.d/dbnet stop)
  Jan 26 05:00:02 dbnetbd crond[23854]: (root) CMD (echo hola 5:0 | mail 
  root )
  Jan 26 05:00:02 dbnetbd crond[23866]: (root) CMD (/etc/init.d/dbnet start )
  =
  
  Teoricamente correcto, pero estos son los correos que recibo a
  diario con la salida de los comandos de mas arriba (observen que
  ambos correos, son enviados a las 03:00:02):
  
  ===
  Recibido: from dbnetbd by  (MDaemon PRO v9.6.5)
   with ESMTP id md50007430798.msg
   for linux_admin; Mon, 26 Jan 2009 02:56:50 -0300
  X-Spam-Processed: , Mon, 26 Jan 2009 02:56:50 -0300
   (not processed: message from trusted or authenticated source)
  X-Rcpt-To: linux_admin
  X-MDRcpt-To: linux_admin
  X-Envelope-From: r...@dbnetbd
  Recibido: by dbnetbd (Postfix)
   id D59D734437; Mon, 26 Jan 2009 03:00:03 -0300 (CLST)
  Distribuido-A: r...@dbnetbd
  Recibido: by dbnetbd (Postfix, from userid 0)
   id CCE1933CF8; Mon, 26 Jan 2009 03:00:02 -0300 (CLST)
  Desde: r...@dbnetbd (Cron Daemon)
  Para: r...@dbnetbd
  Asunto: Cron r...@dbnetbd /etc/init.d/dbnet stop
  X-Cron-Env: SHELL=/bin/sh
  X-Cron-Env: HOME=/root
  X-Cron-Env: PATH=/usr/bin:/bin
  X-Cron-Env: LOGNAME=root
  X-Cron-Env: USER=root
  Message-Id: 20090126060003.cce1933...@dbnetbd
  Fecha: Mon, 26 Jan 2009 03:00:02 -0300 (CLST)
  Responder a: r...@dbnetbd
  X-MDAV-Processed: , Mon, 26 Jan 2009 02:56:50 -0300
  X-MDRedirect: 1
  X-Return-Path: linux_admin
  
  ---
  
  Recibido: from dbnetbd by  (MDaemon PRO v9.6.5)
   with ESMTP id md50007430799.msg
   for linux_admin; Mon, 26 Jan 2009 02:56:50 -0300
  X-Spam-Processed: , Mon, 26 Jan 2009 02:56:50 -0300
   (not processed: message from trusted or authenticated source)
  X-Rcpt-To: linux_admin
  X-MDRcpt-To: linux_admin
  X-Envelope-From: r...@dbnetbd
  Recibido: by dbnetbd (Postfix)
   id 1E03033CF8; Mon, 26 Jan 2009 03:00:05 -0300 (CLST)
  Distribuido-A: r...@dbnetbd
  Recibido: by dbnetbd (Postfix, from userid 0)
   id D1C7634433; Mon, 26 Jan 2009 03:00:02 -0300 (CLST)
  Desde: r...@dbnetbd (Cron Daemon)
  Para: r...@dbnetbd
  Asunto: Cron r...@dbnetbd /etc/init.d/dbnet start
  X-Cron-Env: SHELL=/bin/sh
  X-Cron-Env: HOME=/root
  X-Cron-Env: PATH=/usr/bin:/bin
  X-Cron-Env: LOGNAME=root
  X-Cron-Env: USER=root
  Message-Id: 20090126060003.d1c7634...@dbnetbd
  Fecha: Mon, 26 Jan 2009 03:00:02 -0300 (CLST)
  Responder a: r...@dbnetbd
  X-MDAV-Processed: , Mon, 26 Jan 2009 02:56:50 -0300
  X-MDRedirect: 1
  X-Return-Path: linux_admin
  ===
 
 
 Alli terminan ambos correos?  nada en el body?
 
 A primera vista parece que /etc/init.d/dbnet esta ejecutando algun tipo 
 de salida al ejecutar stop y cron te la envia al correo.
 
 El segundo correo parece un ordenamiento y analisis logico de cron que 
 detecta el mismo comando y te notifica una salida (no se si cron hace 
 esoes un programa muy simple)
 
   0 3 * * * root /etc/init.d/dbnet stop
   0 5 * * * root /etc/init.d/dbnet start
 
 sino parece una notificacion de sintaxis, permisos o un error de 
 variables de entorno que se detecta en ambas lineas al lanzar el 1er 
 comando.
 
 Podrias usar usar  2 /dev/null o  /dev/null 21 al final de cada 
 comando o revisar  /etc/environment
 
 
 
 
 
 
 
 
 
 
 
 
 

-- 
Carlos Lazo B.
Linux User 446689
http://www.carloslazo.cl.kz

El hecho de que tengas un trabajo es algo
normal; el hecho de que seas bueno en tu trabajo es algo destacable




Re: obtener posicion en un file descriptor??

2009-02-04 Por tema Daniel Serpell
Hola!

El Tue, Feb 03, 2009 at 11:54:46PM -0300, Aldrin Martoq escribio:
 On Tue, 2009-02-03 at 17:42 -0300, Aldrin Martoq wrote:
 [...]
  Otra opcion que vi _sin modificar los programas_ seria armar un modulo
  del kernel que ponga un archivo especial en /proc, y uno de el PID y
  tire un mapa de los archivos. Ej:
  # echo $PID  /proc/fdmaps
  #fd #pos
  0 -1
  1 -1
  2 -1
  3 54534
 
 Al final cachureando en fs/proc/* ya estaba hecho... encontre el
 directorio /proc/pid/fdinfo/ que tiene exactamente lo que necesito!
 
 Un programa python para aquello aca:
 
 http://aldrin.martoq.cl/techblog/2009/02/getting-current-file-position-from-a-running-process/


¡Fantástico! ... y cómo no lo vimos antes :-)

Voy a guardar tu script por aquí para tenerlo presente, me ha pasado más de una 
vez
necesitar esa información.

Por lo pronto, lo modifiqué para hacerlo un poco más robusto, ve al final.

Daniel.

---
#!/usr/bin/env python

# Copyright(C) 2009 Aldrin Martoq ald...@martoq.cl
# Licensed under GPL v2

import sys, os

cols = ['pid', 'cmd', 'fd', 'pos', 'size', '%', 'path']
p1 = '/proc/%s/fdinfo/'
p2 = '/proc/%s/fdinfo/%s'
p3 = '/proc/%s/fd/%s'
p4 = '/proc/%s/cmdline'

WIDTH=12

for i in cols:
  print %-*s % (WIDTH, i),
print

for pid in sys.argv[1:]:
 for fd in os.listdir(p1 % pid):
  d = dict(tuple(map(str.strip, l.split(':')))
for l in open(p2 % (pid, fd)))
  d['path'] = os.readlink(p3 % (pid,fd))
  for p in ['socket', 'pipe', '/dev', 'inotify']:
# skip boring fd's...
if d['path'].startswith(%s % p): break
  else:
d['fd'] = fd
d['pid'] = pid
d['cmd'] = '%*.*s' % (WIDTH, WIDTH,
  open(p4 % pid).readline().strip())
try:
  d['size'] = os.stat(d['path'])[6]
except:
  d['size'] = 0
if d['size']  0:
  d['%'] = '%5.1f' % (100.0 * int(d['pos']) / d['size'])
else:
  d['%'] = '  -'
for i in cols:
  print %-*s % (WIDTH, d[i]),
print


Re: Significado de %CPU reportado por top

2009-02-04 Por tema Daniel Serpell
Hola!

El Wed, Feb 04, 2009 at 11:13:13AM -0700, Alejandro Weinstein escribio:
 
[...]
 Es un SBC (Single Board Computer), con un procesador Pentium-M. Acabo
 de revisar y no aparece el directorio cpufreq. Significa eso que esta
 corriendo a una frequencia fija? (En mi laptop, que tiene el mismo
 Ubuntu que el SBC, si me aparece el directorio, con los archivos
 cpuinfo_min_freq y cpuinfo_max_freq entre otros).
 
 Mas alla de que los numeros cuadren o no, me interesa saber si el
 sistema esta muy cargado o no. Si miro el uso total de la CPU, me sale
 0.3%, y parece ser que el sistema esta super holgado. Pero si miro por
 proceso, aparece mi proceso usando el 30%, lo que parece una carga mas
 significativa. Cual es la interpretacion correcta de estos datos?
 

Si quieres saber si esta muy cargado, el uso de CPU es irrelevante.

Un ejemplo: si quieres saber si un estudiante tiene una carga de ramos
muy grande, ¿te sirve mirar si en este minuto esta ocupado?. Claramente,
en el momento que muestrees, o bien el estudiante está en clases (con un
uso de casi 100% ojalá) o no (con un uso de 0%). Por más que lo desee,
no puede está haciendo más del 100% en un momento determinado.

Lo que debes mirar, es el tamaño de la cola de cosas por hacer promediado
en el tiempo... osea, el promedio de cuantas cosas por hacer tienes.

Esta medición, en un sistema Unix, la entregan las columnas load average
que aparecen al principio en el top, o se pueden obtener con uptime.

Los números corresponden a la carga promedio de 1, 5 y 15 minutos.

Si la carga promedio es mayor que el número de CPUs de tu computador,
significa que estas con sobrecarga.

Daniel.



Re: Significado de %CPU reportado por top

2009-02-04 Por tema Aldrin Martoq
On Wed, 2009-02-04 at 11:13 -0700, Alejandro Weinstein wrote: 
 2009/2/4 Aldrin Martoq amar...@dcc.uchile.cl:
  No cuadran porque los contadores se sacan de _distintas partes_ y en
  _distintos instantes_, ni siquiera la linea de arriba te da 100%:
  0.3%user + 0.2%sys +99.4%idle == 99.9%.
 Pero el error es pequenio. No como en mi caso donde la diferencia es
 significativa.
  Todo es calculado separadamente (global y por proceso) y debes tomarlo
  de esa forma. Un ejemplo es compilar el kernel:
[...] 
  La CPU estuvo al 100% durante el intervalo (5 secs), pero si miras la
  lista de procesos no supera el 10% de cpu . En este caso es porque los
  programas que utilizaron CPU ya no estan corriendo; pero todo esta
  correcto dentro de su contexto (4 running tampoco cuadra y asi ...).
 OK. Pero en mi caso el programa que usa la CPU sigue corriendo.
  Mi apuesta en este caso es que tu maquina es un notebook que varia la
  frecuencia de CPU y tanto la frecuencia de la CPU como el uso de tu
  programa deben estar saltando, quizas podrias intentar fijar la
  frecuencia y tendras resultados mas estables; puedes intentar el
  cpufreq-applet de gnome o configurar
  en /sys/devices/system/cpu/cpu0/cpufreq/.

Que la freq de cpu cambie es lo unico que se me ocurre para que tengas
valores tan dispares...

Como explico Eduardo Silva, los contadores se basan en jiffies lo cual
no es una unidad de tiempo sino una cantidad de ciclos de cpu; si la
velocidad de la cpu salta tendras distinta cantidad de jiffies; luego
yo esperaria que los calculos se fueran a la pailas o tal vez estoy
equivocado en esta parte.

Al menos es la explicacion que tengo, yo tenia valores muy extran~os por
ejemplo en maquinas VMware server por esta razon: el contador de ticks
se iba a las pailas, un sleep 10 podia durar 60 segundos y tengo otras
historias similares; claro que en la version 2 mejoraron esto
considerablemente y hace tiempo que no he visto nada raro.



 Es un SBC (Single Board Computer), con un procesador Pentium-M. Acabo
 de revisar y no aparece el directorio cpufreq. Significa eso que esta
 corriendo a una frequencia fija? (En mi laptop, que tiene el mismo
 Ubuntu que el SBC, si me aparece el directorio, con los archivos
 cpuinfo_min_freq y cpuinfo_max_freq entre otros).

Puedes ver la freq de la cpu en /proc/cpuinfo.

Prueba instalando el modulo cpufreq_userspace. 


 Mas alla de que los numeros cuadren o no, me interesa saber si el
 sistema esta muy cargado o no.

Hmmm intenta nmon o algun profiler (systemtap?). Depende del paraque: si
quieres gastar menos bateria, mejorar rendimiento...



 Si miro el uso total de la CPU, me sale
 0.3%, y parece ser que el sistema esta super holgado.

Insisto: Separa que significa en top: us, sy, wa, id, etc ... Tu CPU
usada es 100% - idle.

 Pero si miro por
 proceso, aparece mi proceso usando el 30%, lo que parece una carga mas
 significativa. Cual es la interpretacion correcta de estos datos?

Quizas hay un bug en top o el kernel en la manera como estan
considerando los contadores, y nadie se ha dado cuenta aun... Si puedes
hacer el caso repetible, reportalo a tu distro.


-- 
Aldrin Martoq amar...@dcc.uchile.cl
http://aldrin.martoq.cl/videopodcast/ http://aldrin.martoq.cl/techblog/


signature.asc
Description: This is a digitally signed message part