Re: Significado de %CPU reportado por top
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/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/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/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
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
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
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
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
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
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
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
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
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??
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
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
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