Cuello de botella: ¿Cómo detectarlo y solucionarlo?

Un cuello de botella, hablando en términos de hardware, se refiere al dispositivo más lento del sistema. Esta pieza es la que provoca que el resto de componentes no rindan al nivel que pueden ofrecer. El disco duro es un ejemplo típico. De hecho, no pasa mucho hasta que puede entregar los bits de información que la CPU necesita para empezar a hacer algo. Probablemente hayas notado que algunas de tus aplicaciones tardan mucho tiempo en arrancar, y lo más probable es que esté provocado por un disco duro lento, pero no siempre es así. Una forma rápida de detectar estas incompatibilidades es utilizando las mejores calculadoras de cuello de botella.

Esa misma situación se aplica a todos los componentes del equipo. Básicamente, el ordenador será tan rápido como su componente más lento, ya sea la unidad central de procesamiento (CPU), la unidad de procesamiento gráfico (GPU), la memoria RAM, o el BUS frontal (FSB), etc.. Todos ellos tienen que trabajar juntos transmitiendo y procesando la información a una velocidad que dependerá en mayor o menor medida de los otros componentes.

¿Qué es el cuello de botella?

cuello de botella

Explicado de una forma muy sencilla, se asemeja a lo que ocurre en una botella llena de un fluido o de cualquier otra cosa. Aunque el cuerpo de la botella es ancho y permite que se mueva el contenido de una forma muy veloz, en cuanto todo el contenido llega al cuello o boca de la botella, todo se ralentiza.

De nada sirve que el cuerpo de la botella sea tan ancho, ya que todo el contenido no puede salir a la vez. Al estrecharse la apertura, irá saliendo poco a poco. En cambio, si cortases la botella para retirar el cuello, verías cómo al volcar la botella todo el contenido sale rápidamente y queda vacía mucho antes.

Esto también le ocurre a los bits de información que viajan entre varios dispositivos o partes de tu PC. Eso da como resultado un tiempo de carga elevado, fotogramas por segundo (FPS) muy bajos, y rendimiento inestable.

Cuello de botella: procesador vs tarjeta gráfica

pcie

Vamos a centrarnos en el problema que se produce entre la CPU (procesador) y la GPU (tarjeta gráfica). Muchos afortunados recibirán un juego de última generación para Navidad. Algunos más afortunados aún también recibirán una nueva tarjeta gráfica. Por muy maravilloso que suene, podría llevar a problemas imprevistos.

Si tu nueva tarjeta gráfica es demasiado rápida para tu procesador, entonces éste retrasará toda tu experiencia de juego. Si tu nueva tarjeta gráfica está entregando información a una CPU más rápida, entonces tu nueva GPU sería un desperdicio de dinero. Una vez más, no verás ninguna mejora en el rendimiento.

Cuello de botella en otras áreas

HDD y SSD

Esto ocurre también por la latencia y el ancho de banda limitado para la RAM y la CPU. Si una CPU tiene un rendimiento alto, pero la memoria es lenta, entonces se genera un cuello de botella al no poder mantener la demanda que hace la CPU de instrucciones y datos que trae desde dicha memoria principal. Por eso se inventaron los niveles de memoria cache, para actuar como almacenes más cercanos y rápidos a las unidades de procesamiento y agilizar este trabajo.

Lo mismo se hizo en su momento con la RAM, ya que las memorias de segundo nivel eran mucho más lentas para traer desde allí las instrucciones y datos en forma de secuencia que eran los programas de software. Entonces se decidió poner una memoria intermedia,  o RAM, que pudiera mantener un buen número de datos e instrucciones que se van a usar con mayor prioridad para no tener que ir al disco duro a por ellas.

Actualmente, con los nuevos discos duros de estado sólido, o SSD, también se ha mejorado bastante este problema de los cuellos de botella. A pesar de que la RAM «se ha quedado un poco atrás» en cuanto a rendimiento si se compara con el microprocesador, pero gracias a prácticas como la memoria caché, buffers de instrucciones, ejecución fuera de orden, etc., se ha conseguido paliar algunos efectos negativos para el rendimiento.

Durante la historia de la informática, siempre se han intentado agregar más memorias intermedias cuando aparecían gaps de rendimiento elevados entre diferentes partes. También los propios discos duros tienen chips de memoria pequeños llamados buffers de 8, 16, 32, 64MB,… que sirven para almacenar algunos datos para acelerar los accesos (lectura/escritura).

Algo parecido ocurre con ciertas inferfaces o buses de comunicación. Es decir, no siempre el problema es algo de uno u otro dispositivo, también de esas latencias o anchos de banda de los buses o interconexiones que conectan un componente y otro. Por ejemplo, si un disco duro es relativamente rápido para comunicarse con la RAM, pero tiene una interfaz lenta, de poco serviría. O si una RAM es rápida, pero el bus que la conecta con la CPU es limitado… tampoco sirve de gran ayuda.

Lo que intento decir es que el problema puede ser muy disperso. Para reducir el cuello de botella, todos los elementos que componen un PC deberían ser lo más equilibrados posible, y con rendimientos similares. Pero eso es complicado, y a nivel práctico no sucede. En muchas ocasiones por problemas de precio. Por ejemplo, sabemos que los registros o la caché son memorias muy rápidas. ¿Por qué no se usan éstas en vez de la RAM? Muy sencillo, el problema es el coste. Se puede conseguir una memoria SDRAM relativamente grande y barata, pero no podrías hacer lo mismo con las celdas SRAM.

Igual ocurre para los discos duros. Si una RAM es más rápida que un HDD o algunos SSD, ¿entonces? ¿por qué no crear una RAM de cientos de GB o de varios TB. Nuevamente el problema es el precio. El precio de una RAM de ese tamaño no te lo podrías permitir.

¿Cómo determinar quién es el culpable?

Esta pregunta se ha planteado en foros y sitios web desde hace años. ¿Qué necesito para saber si es mi procesador o mi tarjeta gráfica la que está ralentizando mi ordenador? Algunas veces parece fácil pero en algunos casos la cosa se complica.

Podrías hacer una búsqueda en Internet para ver cómo combina tu procesador con tu tarjeta gráfica, pero si tu hardware no es muy actual, entonces encontrar tal artículo será difícil.

Para ver la utilización de procesador y tarjeta gráfica es recomendable instalar MSI Afterburner o Riva Tuner Statistics Server. Utiliza éste último para limitar tus marcos para juegos individuales o multijugador. Usa Afterburner para mostrarlos como superposición en tus juegos favoritos. Con estas herramientas, deberías poder ver si existe un cuello de botella en la CPU. Además, Afterburner puede crear un archivo de registro para que puedas observar cómo funciona todo tu sistema en cualquier momento.

En cualquier caso, si estás observando bajos FPS, baja algunos de los ajustes de gráficos en el juego. Toma nota de los cambios para que puedas devolverlos al estado original si fuera necesario. No hagas todos los cambios de una vez: elige un parámetro, bájalo y vuelve a probarlo. Es mucho más fácil hacer un seguimiento de esa manera.

  • Si la reducción de la configuración de gráficos no tiene ningún efecto sobre los FPS, entonces el cuello de botella está en el procesador.
  • Si al reducir la configuración de los gráficos se aumenta el número de FPS, la tarjeta gráfica está funcionando al límite de su capacidad.
  • Si el videojuego presenta tirones y cortes inesperados y los dos puntos anteriores parecen estar bien, entonces es problema de tu RAM. Piensa en ampliarla. En caso de tener una cantidad aceptable, entonces puede que el problema sea la velocidad de la misma. Por ejemplo, si tienes una DDR2 o DDR3, etc., estaría bien que actualices a una DDR4…
  • En caso de que los problemas no estén en los FPS ni tampoco en los tirones durante el juego, sino que esté en el tiempo que tarda el videojuego en cargarse, entonces el problema es tu disco duro. Si es de tipo HDD, deberías pensar en agenciarte uno SSD.
  • ¡Ojo! Porque en caso de ser un videojuego multijugador u online, y el rendimiento no va del todo muy bien, el problema puede que esté en el ping de tu conexión.
  • Y como novedad, en el caso de que estés usando una plataforma de videojuegos en streaming, como Google Stadia, NVIDIA GeForce Now, etc., y el videojuego no va como se espera, casi seguro que es por tu conexión a Internet. Si no tienes una banda ancha decente, entonces no le eches las culpas al hardware. En estos casos el videojuego se ejecuta en un servidor remoto y a ti simplemente te llega la imagen para que puedas jugar, por lo que tu equipo es un simple cliente. Por lo general, si tienes fibra óptica no habría problema alguno, pero en otras redes de banda ancha, deberían tener al menos 10Mbits/s. Aunque para jugar a 720p se recomiendan 20, y para 1080p serían unos 35, para 4K unos 60Mb/s, siempre con un ping de menos de 60ms.

Opción simple y sin instalar nada

No obstante, esto no es del todo así en algunos sistemas. Por lo que este método de decidir puede que no sea el adecuado en todos los casos. La mejor opción para saber dónde está el problema y ver cómo lo puedes atajar es usar una web en la que puedes descubrir fácilmente simplemente poniendo cuál es tu CPU y cuál tu GPU. La app web te calculará dónde está el problema.

Para ello, simplemente sigue los siguientes pasos:

  1. Entra en esta web.
  2. En el menú de selección para la CPU, elige la CPU que tienes montada en tu equipo. Si no sabes cuál tienes, puedes usar programas como Hardinfo, AIDA64, CPU-Z, etc.
  3. En el menú de la GPU haz lo mismo con el modelo de GPU.
  4. Selecciona también la cantidad de memoria para gráficos que tienes. Y la cantidad de GPUs que tienes (normalmente 1).
  5. Luego pulsa el botón Calcular.
  6. Ahora te muestra el informe de tu hardware para ayudarte a ver dónde está el problema.
  7. Verás una escala de color desde verde (sin cuello de botella o cuello de botella leve) hasta rojo (cuello de botella elevado). Cualquier cosa por encima del 10% es un cuello de botella elevado.
  8. Más abajo verás además algunas recomendaciones de partes que puedes comprar para mejorar tu situación. Te hará sugerencias de CPUs, tarjetas gráficas o memoria RAM para que esa situación mejore.

Puedes echar un ojo a las configuraciones de PCs de este blog para saber cómo elegir las partes y evitar esos problemas de cuello de botella.

Sincronización vertical

La sincronización vertical puede ser un ajuste incluido dentro de la configuración del juego, y casi con toda seguridad se incluirá en la configuración del apartado gráfico. No entraremos en detalles técnicos, pero básicamente la sincronización vertical evita que la tarjeta gráfica envíe mas fotogramas al monitor más rápido de lo que puede mostrarlos. No porque pueda causar algún problema al monitor, sino porque puede causar un montón de irritantes “cortes visuales” si la sincronización vertical está desactivada.

La razón por la que mencionamos esto es porque si tienes un monitor que funciona a 60Hz, entonces la máxima velocidad que puedes esperar en los juegos es de 60 FPS. El mismo límite superior coincidirá con la frecuencia de actualización del monitor, ya sea 60, 75, 120 o incluso superior. La cuestión es que no debes esperar obtener 80FPS en un monitor de 60Hz. Eso no va a pasar con la sincronización vertical activada.

Conclusiones

A veces, la respuesta más simple puede ser la más difícil de encontrar en Internet. Aunque esto os pueda sonar un poco extraño, parece ocurrir especialmente en los foros donde recibirás todo tipo de respuestas enrevesadas que pueden o no dirigirse a la pregunta original.

Experimenta con la sincronización vertical, ya que es habitual tenerla activada y deshabilitarlo en algunos juegos puede ayudar en algunos casos.

Si tienes un disco duro muy lento y tienes la RAM extra, puedes intentar almacenar los archivos del juego en una unidad RAM-Drive. Esto no solucionará un cuello de botella del procesador o la gráfica, pero seguramente mejorará los tiempos de carga si hay mucho uso del disco.

Algunas consideraciones generales son:

  • Si tu tarjeta gráfica está siendo utilizada al 99% de su capacidad, significa que el cuello de botella se crea en este componente.
  • Durante los juegos: Si el uso de la CPU es del 99-100% y la de la tarjeta gráfica es baja (50-80%), entonces tu procesador está haciendo cuello de botella.
  • Si ni el uso de procesador ni tarjeta gráfica es muy alto, significa que el juego al que estás ejecutando no es muy exigente que tu CPU y GPU sean suficientemente potentes. Observa si con otros videojuegos más exigentes a los que juegues ocurre lo mismo o no. O tal vez la configuración gráfica esté demasiado baja.
  • Una alta frecuencia de pantalla (120Hz, 144Hz) en juegos exigentes generalmente requerirá un procesador i7 moderno o un i5 overclockeado (ejemplo: Battlefield 1).
  • Una alta resolución (1440p, 4K) provocará más fácilmente el cuello de botella en la tarjeta gráfica.
  • Normalmente 8GB de RAM es una capacidad muy justa para juegos AAA de gama alta. Por ejemplo, si juegas a Battlefield con Steam y Discord también abiertos, el uso de RAM alcanza los 8GB. En este caso, el cuello de botella se estaría generando en este componente. Si tienes presupuesto, es recomendable que aumentes a 16GB.
  • Si tienes un monitor de 144Hz y estás experimentando un cuello de botella en el procesador, limitar la frecuencia de fotogramas a un valor más bajo te ayudará a hacerlo más suave con unas caídas de fotogramas menos bruscas. Esto se puede hacer con MSI Afterburner o Riva Tuner Statistics.

Guiahardware
Estaremos encantados de escuchar lo que piensas

Deje una respuesta

Guía Hardware
Logo