ArchiTecnologia

Aprendizaje abierto. Conocimiento libre.

ArchiTecnologia
AsesoramientoConsejosHardware

Cómo localizar cuellos de botella en tu PC

Algunos usuarios no consiguen desplegar todo el rendimiento de su máquina debido a cuellos de botella. En ocasiones, no son conscientes de ello, y se limitan a invertir dinero en comprar nuevos componentes que tampoco terminan de conseguir el desempeño esperado.

Por ese motivo, deberías saber cómo puedes detectar estos cuellos de botella en tu PC para determinar cuál es el origen de la falta de rendimiento que estás sufriendo. Así podrás invertir justo en el componente que está causando el bloqueo o determinar si realmente te deberías plantear adquirir una nueva máquina completa…

¿Qué es un cuello de botella?

Hardware, cuellos de botella

Como su propio nombre describe de forma gráfica, un cuello de botella hace referencia a un «estrechamiento» en la capacidad de algún dispositivo, o de un bus, y que podría estar afectando al rendimiento del conjunto del sistema o de componentes específicos.

Por ejemplo, puede existir un cuello de botella entre la CPU y la RAM si ésta última tiene una alta latencia o un ancho de banda bajo, o que el bus sea suficiente, y la memoria también, pero que la CPU tenga un rendimiento bajo. Podría también haber un cuello de botella en la tarjeta gráfica por el tipo de interfaz de comunicación que use, la lentitud de los accesos a los HDD también podrían ser cuellos de botella, etc.

Por tanto, los cuellos de botella se deben evitar si se pretende que una máquina desarrolle todo su potencial. Por ese motivo, hay que buscar estos desequilibrios para tratar de equilibrarlos mediante una nueva configuración o actualizando algunos componentes.

No sirve de nada montar un componente muy potente si el resto de componentes no están al mismo nivel. Es decir, una CPU podría estar generando un cuello de botella tanto si es muy rápida (podría no estar bien «alimentada» de datos e instrucciones por la RAM), como si es muy lenta (el problema en este caso es la propia CPU).

¿Cuáles suelen ser los culpables habituales de los cuellos de botella?

Los cuellos de botella pueden estar causados por múltiples componentes, sin embargo, lo habitual es que sean debidos a:

En ocasiones, la refrigeración también puede ser un factor limitante, ya que si no es suficiente, la CPU o GPU podrían estar padeciendo throttling.

  • CPU: debes entender que esta unidad es la encargada de la ejecución de los programas, es decir, la que se encarga de traer instrucciones y datos desde la memoria principal, procesarlos, y luego entregar los resultados. Por tanto, de ella dependerá la rapidez con la que se ejecutan los programas (agilidad de los menús, rapidez en la des/compresión, cifrado, codificación, compilación…).
  • RAM: la memoria principal es la que se encarga de mantener los procesos (instrucciones y datos) de los programas para alimentar a la CPU. Por tanto, de ella dependerá en cierta medida la ejecución de los programas. Si se satura por falta de capacidad, si tiene un ancho de banda bajo o una latencia alta, por muy rápida que sea la CPU, estará bloqueando su potencial.
  • GPU: afecta al rendimiento gráfico, por lo que se notará especialmente en videojuegos (FPS) u otros programas que demanden potencia de este chip. Por ejemplo, el renderizado (aunque esto también se puede hacer por CPU). La VRAM también es culpable del rendimiento, especialmente cuando se trabaja con altas resoluciones. Mientras mayor sea la resolución de pantalla, más espacio en memoria se necesitará…
  • Almacenamiento: muchos no le dan suficiente importancia a la memoria secundaria, pero ésta también está en constante comunicación con la RAM, para cargar o descargar procesos desde/hacia la memoria de intercambio. Además, muchos programas necesitarán acceder (leer/escribir) en esta unidad durante su ejecución. Generalmente, un cuello de botella causado por este componente suele generar arranques del sistema operativo lentos, cargas de aplicaciones o videojuegos lentas, movimientos de datos lentas, etc. Pero ojo, puesto que también puede afectar a otras actividades, como los FPS de un videojuego. ¿Cómo? Pues muy sencillo, algunos videojuegos de mundo abierto (e.j.: GTA, Cyberpunk 2077,…) suelen estar constantemente accediendo al disco duro, puesto que necesitan grandes cantidades de datos (texturas) para este mundo virtual. Si la unidad de almacenamiento no es capaz de aportar accesos rápidos para la caché en RAM, entonces se verá comprometida la tasa de cuadros por segundo…
  • Red: es muy fácil de detectar, ya que se nota cuando se ralentizan las operaciones de subida o bajada de datos de la red. También puede haber problemas por un ping lento, aunque esto suele afectar más a los que usan videojuegos multijugador…
  • Controladores: como ya he comentado en otros artículos, el firmware y los controladores pueden estar lastrando el rendimiento de los componentes, especialmente el de la tarjeta gráfica. Algunas actualizaciones de los drivers gráficos podrían traer optimizaciones para ciertos títulos de videojuego o mejoras del rendimiento en general.

La placa base, pese a lo que muchos piensan, no es tan importante en cuanto al rendimiento. Es cierto que algunos detalles ayudan, como que la cantidad de canales que tenga (DualChannel, QuadChannel) para la memoria, pero debería ser siempre el último componente de los principales al que prestar atención…

¿Cómo detectar cuellos de botella?

Placa base bus

Para detectar los cuellos de botella puedes valerte de algunas herramientas de software, como las de benchmarking, o también mediante métodos manuales, conociendo un poco la arquitectura de tu PC para determinar qué es lo que puede estar generando el problema.

Existen varias herramientas online para realizar cálculos que te ayudarán a elegir los componentes de tu PC. Dos ejemplos son la de PC-Builds y la de CPU Agent. Pero, te aconsejo no fiarte al 100% de estas herramientas. En muchos casos son bastante inútiles.

Además, según las necesidades de cada usuario, el procedimiento para detectar los cuellos de botella podrían variar. Te ayudaría leer los requisitos recomendados del software que usas habitualmente, no solo para saber si tu PC cumple con los requerimientos, sino para identificar con qué componente es más exigente dicho software y saber qué deberías potenciar.

También es importante conocer las optimizaciones del software. Por ejemplo, algunos piensan que mientras más núcleos es mejor para los videojuegos. Pero éste tipo de software no suele estar tan optimizado para aprovechar el paralelismo. En cambio, una frecuencia mayor y un rendimiento single-core superior, puede beneficiar más que una mayor cantidad de núcleos.

En el caso del gaming, algunos intentan usar configuraciones multi-GPU, otra cosa absurda, ya que el gasto para comprar una segunda tarjeta gráfica puede ser muy elevado y la ganancia de rendimiento que consiguen no compensa esa inversión.

Todo lo contrario le ocurre a otros software como el de renderizado, compilación, virtualización (mejor con más vCPUs y vRAM), codificación, etc., que se puede acelerar mejorando el paralelismo. Además, cuando se trata de animación 3D, renderizado y edición de vídeo, muchos usuarios piensan que lo importante es solo una buena tarjeta gráfica y nada más. Se olvidan de una parte muy importante, como es la CPU, especialmente en la edición de vídeo (codificación), en la que estará asumiendo casi todo el trabajo.

Para CAD/CAM, y no me preocuparía tanto del hardware en sí mientras cumpla con los requisitos recomendados del software. Sí que potenciaría el monitor, que tuviera un buen tamaño y aspect ratio, así como una buena resolución y densidad de píxeles, buen tiempo re respuesta, buenos ángulos de visión (el tipo de panel es importante aquí), e incluso modo CAD/CAM como algunos monitores tienen.

No hay que confundir el tiempo de respuesta de una pantalla (ms) con la frecuencia de refresco (Hz). El primero es el tiempo que un pixel tarda en cambiar de color, mientras que el segundo es la cantidad de veces que se actualiza la imagen cada segundo.

Otros casos especiales pueden ser aquellos que los usen para aplicaciones científicas o de ingeniería, con cálculos complejos, simulaciones (p.e.. CFD). Es especialmente la potencia de cálculo (FLOPS) de la CPU y/o GPGPU.

Ejemplo para gamers

Dado que el mundo gaming es uno de los más interesados en tratar de paliar los cuellos de botella, en el caso de que no hayas alcanzado los objetivos de resolución, velocidad de fotogramas (FPS), y configuración de gráficos:

  • Si cuando usas un videojuego ves que la CPU está trabajando próxima al 100% de su capacidad y la utilización de la GPU es baja (50-80%), entonces la CPU podría estar obstruyendo el rendimiento. Ten en cuenta que, aunque la CPU no se encargue de los gráficos, sí que tiene que encargarse de la lógica y de «encargar tareas» a la GPU, por lo que podría terminar afectando al rendimiento gráfico también. Además, cuando se emplean frecuencias de refresco altas (120Hz), se suele también hacer un uso más intensivo de la CPU.
  • Si trabajas con una resolución alta, de 4K o más, el componente más saturado será la GPU. Además, se estará demandando bastante espacio en la VRAM. Asegúrate de tener una capacidad de memoria gráfica acorde con la resolución. Con 4GB puede ser suficiente para FullHD, 6GB para 4K,…
  • La lentitud de un videojuego, especialmente un AAA, puede deberse a la cantidad de memoria RAM. Recuerda que sería recomendable emplear 16GB. 8GB suele ser una configuración habitual de muchos PCs, pero para títulos actuales más exigentes y el uso en paralelo de otras herramientas como las de streaming, chat, etc., se quedaría algo corto.
  • Cuida también valores desproporcionados entre la frecuencia de refresco con respecto a los FPS. Una frecuencia muy elevada en el monitor sin control podría tener un efecto negativo. Por ejemplo, si tu GPU está renderizando a 200 fotogramas por segundo y la pantalla solo llega a 60Hz (60 actualizaciones por segundo), se limitará a eso, generando una desincronización de imagen (tearing). Para ello se han desarrollado las tecnologías de sincronización como Free-Sync, G-Sync, y V-Sync.
  • En caso de ser un videojuego de mundo abierto, cuida también tu disco duro. Es mejor tener un SSD NVMe PCIe. No solo hará que el videojuego y las partidas se carguen más rápido, también mejorará la tasa de FPS.

Isaac

Apasionado de la computación y la tecnología en general. Siempre intentando desaprender para apreHender.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Si continuas utilizando este sitio aceptas el uso de cookies. más información

Los ajustes de cookies de esta web están configurados para "permitir cookies" y así ofrecerte la mejor experiencia de navegación posible. Si sigues utilizando esta web sin cambiar tus ajustes de cookies o haces clic en "Aceptar" estarás dando tu consentimiento a esto.

Cerrar