El día 6 de octubre de 2015, 15:08, Darthcoli - Alejandro Izquierdo <[email protected]> escribió: > Hola. Ante todo un saludo, soy nuevo y hace poco me apunte a esta lista. > Quiero estrenarme lanzando una consulta que arrastro hace tiempo, es una > situación que veo a menudo y que nunca he conseguido entender. > > Pongo un ejemplo: tengo un sencillo script en bash que lee un archivo de > texto y compara lineas de texto. El script no hace nada mal o complicado ni > entra en bucles ni nada parecido. Sin embargo siempre consume la misma cpu > (aprox un 10%) y tampoco genera elevadas tasas de IO, sobran gb de ram. > > He probado en diferentes maquinas! he probado a cambiar la prioridad con > renice. > > ¿Por que? ¿Por que no usa toda la cpu? ¿Por que si tiene recursos libres de > sobra no los usa? > > Muchas gracias y saludo > > -- > -Alejandro Izquierdo- > >
No parece nada raro, sobre todo si hace operaciones de disco que no son las más rápidas y por tanto el procesador estará esperando a que terminen. Otra cosa es ver como mides el uso de CPU, y cuantos núcleos tiene tu equipo. (Si tienes varios núcleos, pero visualizas el uso total de cpu, es normal que sea pequeño). Si quieres ponerlo a prueba haz lo siguiente: Abre varios terminales. pon el "top" en uno de ellos. luego en el otro vete ejecutando comandos "yes", que solo pintan una cadena repetidamente. $ yes "hola mundo" >/dev/null & $ yes "hola mundo" >/dev/null & $ yes "hola mundo" >/dev/null & $ yes "hola mundo" >/dev/null & No pongas demasiados si no quieres dejarlo tostado :-) $ killall yes para matarlos todos. $ jobs para ver los procesos en segundo plano en esa terminal $ kill %n (n es el numero que te pintará jobs) $ ps ax | grep yes para ver los pid de los procesos $kill pid (pid es el identificador de proceso.) S2

