Hace 6 años | Por Stamina a omicrono.elespanol.com
Publicado hace 6 años por Stamina a omicrono.elespanol.com

Hay muchas razones por las que no deberías creerte el porcentaje de uso de la CPU; pero la cosa va a peor, hasta el punto de que es un dato irrelevante. Seguro que en más de una ocasión has notado que tu ordenador iba lento, que los programas tardaban en cargar, o que un juego de repente iba a saltos. Y es muy posible que inmediatamente hayas buscado cuánto está siendo usada la CPU, para saber si realmente está a tope o si ocurre algo más.

Comentarios

D

#2 Gracias por la explicación, soy totalmente analfabeto en el tema y lo he entendido.
Los chinitos de la CPU se tocan los huevos porque los chinitos de la memoria están hasta arriba de curro y no dan abasto.
Pues sí, hay que ampliar la cocina para que lleguen a tiempo todos los pedidos o cerramos el restaurante.
lol lol

D

#2 ¿ gap? ¿en serio?

D

#7 exacto, así de tonto ha sido el uso de esa palabra, gracias por ilustrarlo con varios ejemplos más.

fofito

A mí todo esto me resulta indiferente,yo siempre le echo 10€.

j

Vamos, que no sabe interpretar los datos que muestra y se saca chorriarticulo sensacionalista. Hace ya muchos años que los So gestionan perfectamente los hilos de ejecución múltiples...

D

Esto me parece un artículo estilo listillo del que viene a decirte que algo "realmente" no es verdad y lo coge con pinzas. Al final depende de cómo lo interpretes, pero el funcionamiento actual me parece correcto, las personas que no sepan mucho sobre como funcionan se hacen una idea de qué tan ocupado está el ordenador y los que saben algo más igualmente, y además sabrán cosas que comenta el artículo.

Jakeukalane

Sensacionalista/errónea/antigua/irrelevante (no habla de si pasa en Linux).

p

Por eso cada ves se usan memorias caché más gordas.

Priorat

Que me corrijan los expertos lo que he entendido.

En una medición de uso de la CPU si marca 90% puede ser perfectamente que el procesador haya trabajado realmente el 20% del tiempo y el 70% restante lo haya pasado esperando entradas de datos de la memoria.

Si lo he entendido bien, sigue pareciéndome práctica la medida porque indica el tiempo en que el procesador ha sido usado para un proceso, bien sea operando, bien sea esperando.

D

#1

Lo has entendido bien, puede ser un 70-20 o incluso peor (al final depende de cómo accedas los datos, si accedes a muy pocos datos muy fragmentados es peor, si accedes a bloques de datos continuos que aprovechen el tráfico entre memoria y CPU, mejor)

Creo que el mínimo que se transfiere son páginas de 4K, si accedes a los datos de esta manera, es el mejor rendimiento, si pillas datos de 4 en 4 bytes y dispersos peor.

inar

#3 ¿En qué afecta la fragmentación? En el artículo alude a problemas de la gestión de datos entre la CPU y la memoria caché. La fragmentación * es algo propio de unidades de disco fijo.
---
Y siguiendo este camino, descubrió que problemas en la gestión de la memoria caché provocaba un aumento del 16% en el tiempo de espera de cada hilo.
---

cc. #1

* (que sea significativa como para afectar al rendimiento, me refiero)

d

#15 Fragmentación puede haber en cualquier dispositivo de almacenamiento temporal o no. Los discos rígidos lo sufren mucho porque los datos se almacenan mucho tiempo. En la ram también pasa mucho. Si en un casette borras algunas canciones que no te gustan y en esos espacios metes otras, en algún momento tendrás espacios libres donde no cabe ningún tema. O lo cortas en varios pedazos (fragmentación), o tienes ese espacio desaprovechado y no puedes meter mas canciones.

inar

#18 Sí, ¿pero en la caché, tanto como para ser significativo?

D

#21

Desde hace mucho se tiende a meter lo más posible en memoria, porque va rápida.

Y es cierto, va rápida, pero cuando metes GB de datos en memoria, a esta ya le cuesta moverlos y como dije antes, las memorias no evoluciona tan rápido como las CPUs.

Últimamente no se comenta, pero las CPU tiene un multiplicador de frecuencia, es decir, una velocidad interna y otra de comunicación con la memoria una los PCI. Mientras que la interna son GHz la externa son pocos cientos de MHz (lo de la memoria DDR4 a 2400 es un “truco”)

La CPU de mi casa creo que tiene un multiplicador de x40 (el bus va a 100Mhz, la CPU a 4 GHz)

D

#15

Cuando bajas a la memoria a por datos subes bloques de 4K (depende del procesador pero creo que es así) si el siguiente dato que pides está en esas 4K te lo da de la cache y va como una moto pero si no está ahí se produce un fallo de cache, descartas los datos y traes otro bloque de 4K con el consiguiente perjuicio en latencia. Cuando hablo de fragmentación me refiero en la forma de acceder a los datos, no que la memoria se fragmente (que lo hace, pero eso casi no afecta)

Encima, para complicar la cosa, piensa que hay tres niveles de cache, L1, con 32K para datos y 32K para código, L2 un poco más grande y mas lenta (creo que son unos 128KB por core) y L3 que es la que se anuncia que es compartida entre todos los cores, aunque en realidad asigna entre 1 y 2 MB por core, que es la más lenta de todas.

D

El artículo original (1) es de hace casi un año, no se de dónde sacan las referencias a Meltdown y Spectre, tiene otro artículo "KPTI/KAISER Meltdown Initial Performance Regressions" (2).

(1) http://www.brendangregg.com/blog/2017-05-09/cpu-utilization-is-wrong.html
(2) http://www.brendangregg.com/blog/2018-02-09/kpti-kaiser-meltdown-performance.html

D

¿Y entonces por qué cuando el CPU está cerca de 100% la interacción con el computador se vuelve tan lenta? (Sin actividad de disco u otra cosa que la justifique)

D

También influye que hoy en dia los juegos y programas estén customizado como el culo ¿no?

D

#14 ¿customizados?

A ver si vas a tener algún virus...

inar

#14 ¿Personalizados como el culo? ¿Igual querías decir "programados" (developed)?

Ironizator

#20 Seguramente la palabra que buscaba era "optimizados".

D

#24 Exacto, el sueño hace estragos en la mente.

D

#14

Más bien optimizados con el culo.

D

#26 Leches esa era la palabra que ayer no me salía.

NinjaBoig

Obsolescencia programada.