Algo que nos puede traer de cabeza como administradores de sistemas y, a veces como usuarios es el hecho de que un proceso se coma, devore y trate sin piedad la CPU de nuestro sistema. Ya no solo el hecho de que un programa deje inservible el ordenador, aunque a día de hoy con tantos núcleos de procesador, casi siempre tendremos algo de CPU para enviar una señal de parada a un proceso.… Leer artículo completo
Limitar el uso de CPU de nuestras aplicaciones o procesos en GNU/Linux (señales, nice, cpulimit/cputool, cgroups, systemd slices)
Ejecutando tareas desde consola simultáneamente con GNU Parallel
Los ordenadores cada día son más potentes. Y una de las formas de poder ejecutar tareas de forma más rápida, es simultanearlas. Por un lado, es lógico que si una tarea está esperando un dato (ese dato puede venir del disco, del usuario por medio del teclado o el ratón, o descargándoselo de Internet), es normal que el ordenador decida ejecutar otras cosas para no perder el tiempo. Y de hecho se ha aprovechado esto para tener varios programas en ejecución, constantemente dando y quitando el acceso al procesador.… Leer artículo completoCómo distribuir cálculos entre varios núcleos para acelerar procesos de computación [ejemplos en C++]
Hace años, más o menos a finales del siglo XX y principios del XXI y, como vimos en mi anterior post, hubo una guerra por los Megahercios. Es decir, las grandes compañías de procesadores, en aquella época Intel y AMD que, aunque había más fabricantes, éstos eran los que más sonaban, peleaban para que sus procesadores corrieran más que los de la competencia. Es más, como el usuario de a pie siempre se ha regido por la frase: «burro grande, ande o no ande«, siempre querrá un procesador con más megahercios, una cámara con más megapixels o una televisión con más pulgadas.… Leer artículo completoMuseo informático: Procesadores Intel Pentium II y AMD K6-2 ¡Por la guerra de los Megahercios en la CPU!
Los que me sigáis en Instagram habréis podido ver las fotos que voy publicando de vez en cuando de mi museo informático. Muchas de esas fotos tienen ya mucho tiempo (siempre me ha gustado fotografiar el hardware), otras, en cambio corresponden a piezas que he encontrado buscando en casa, dentro de cajones y cajas que hace mucho tiempo que no se abren y ha tocado desempolvar.
En este caso, traigo dos procesadores, aproximadamente de la misma época, el AMD es un pelín más nuevo.… Leer artículo completo
Píldora: Modificar a mano la velocidad de los ventiladores de nuestro ordenador
Normalmente el control de los ventiladores que hace automáticamente el sistema está bien. Cuando la CPU se calienta mucho los ventiladores aumentan su velocidad y ésta disminuye cuando se enfrían. El objetivo es mantener el procesador a una temperatura estable y que no se rompan los componentes. Porque seguro que más de uno nos hemos cargado algún aparato cuando se ha sobrecalentado.
El caso es que no siempre está bien el control automático.… Leer artículo completo
Cómo obtener información de configuración del sistema Linux o tu servidor en C y C++ (II. Sistema y CPU)
Hace unos días comentábamos algunos ejemplos sobre obtención de información relativa a la memoria de nuestro sistema en C, tanto RAM, Swap, buffers, caché, como información relativa a una aplicación. También vimos cómo obtener el uptime de nuestro equipo o la carga media del sistema en 1, 5 y 15 minutos. Son cosas que podemos hacer fácilmente desde la línea de comandos y que pueden sernos muy útiles en nuestros programas.… Leer artículo completo
Cómo configurar auto escalado asociado al balanceador de carga de Amazon Web Services
Como hemos visto en anteriores posts, cuando una aplicación crece debemos hacer que el rendimiento sea aceptable, tolerar errores y que no nos salga muy caro. También, hace unos días vimos cómo configurar el balanceo de carga de nuestros servicios en Amazon Web Services.
Amazon, dentro de sus servicios, nos proporciona una forma fácil y amigable de ahorrar costes, al mismo tiempo que mantenemos nuestros servicios online y con el mejor rendimiento posible.… Leer artículo completoCómo conocer CPU y memoria ocupada por un grupo de procesos con el mismo nombre
En multitud de ocasiones, mientras estamos trabajando con nuestro ordenador, o incluso con un servidor remoto, se presenta la necesidad de saber la memoria ocupada o la CPU consumida por un determinado proceso.
Para ello tenemos herramientas como top o ps (entre otras) que nos permiten conocer dicha información. Podemos encontrar multitud de tutoriales para ambos comandos, sólo daré una pincelada aquí.ps
Casi siempre que uso ps suelo hacerlo de la siguiente manera:
$ ps ax
para así mostrar todos los procesos que están corriendo actualmente, y si queremos obtener información sobre memoria y CPU podremos ejecutar:
$ ps axl
o
$ ps axo pid,pcpu,pmem,size,cmd
Si queremos obtener más datos como ID de proceso (pid), % de CPU (pcpu), % de memoria (pmem), tamaño en memoria (size), comando que genera el proceso (cmd).… Leer artículo completo
Monitorizar nuestro sistema desde una aplicación en C++11
Nuestros programas, muchas veces necesitan conocer información sobre el ordenador donde se están ejecutando. Una característica muy interasante y útil (para mi gusto) es que los sistemas Unix nos proporcionan una interfaz para conocer muchas cosas a través del sistema de archivos, de esta forma podemos conocer la información estemos donde estemos y usemos en lenguaje que usemos (no tenemos que tener una API en nuestro lenguaje que pida al sistema la información ni nada).… Leer artículo completo
Últimos comentarios