¿Por qué cuando duplica la velocidad del procesador, por ejemplo, 1 GHz a 2 GHz, no obtiene el doble de rendimiento de su PC?

Como otros han mencionado, debe tener en cuenta todo el sistema.

Entonces, duplicó la velocidad de los núcleos de su CPU y, presumiblemente, ahora tiene un diseño de CPU completo funcionando a esa velocidad. Pero aún tiene cuellos de botella que no ha abordado:

  • Ahora, que su CPU está funcionando el doble de rápido, sus cachés del sistema faltan con más frecuencia. La CPU es la parte más rápida de un sistema informático, y los cachés se implementan en función de ambos costos, en términos de bienes inmuebles del chip y el costo de una pérdida de caché. Si sus procesos de 1 GHz se retrasan en N ciclos en una falla de caché, no se retrasará en 2N ciclos … ambas CPU se ejecutan a la misma velocidad en una falla de caché. Por lo tanto, es probable que desee agregar más caché.
  • Tendría el mismo tipo de problema si duplicara el número de núcleos de CPU en lugar de la velocidad del reloj para aumentar el rendimiento del sistema. No tiene ningún núcleo de CPU dado que se ejecute más rápido, pero ahora tiene el doble de trabajo realizado (idealmente) y el doble de contención para DRAM. Entonces, cuando agrega más núcleos de CPU, también desea agregar más caché.
  • Cuando el caché falla, presionas DRAM. Sin ningún cambio en el controlador DRAM, esa falla toma tanto tiempo real como la falla con el procesador más lento, la misma memoria de velocidad, pero debido al procesador más rápido, se está perdiendo más trabajo potencial. En el proceso de ir a CPU más rápidas a lo largo de la evolución de los sistemas informáticos, hemos visto buses de memoria más amplios, más buses de memoria (casi todas las PC o CPU de teléfonos / tabletas tienen al menos dos buses DRAM de 64 bits de ancho, algunos tienen cuatro o incluso más). DRAM nunca coincide con la velocidad de la CPU, pero cambiar las arquitecturas de DRAM (por ejemplo, asíncrono a sincrónico a DDR, DDR2, DDR3 y ahora DDR4, lo ha movido en la dirección correcta) ha ayudado a que las CPU realmente funcionen más rápido.
  • Además de DRAM, una CPU necesita acceder a la entrada y salida, también conocida como E / S. La CPU original de 1 GHz para PC, AMD Athlon, conectada a un bus paralelo PCI de 32 bits que ofrece transferencias de hasta 132 MB / s, y una ranura AGP con 2x o 4x ese ancho de banda. Señales compartidas PCI y AGP; solo uno podía ejecutar un ciclo a la vez, y el ancho de banda PCI se compartía entre todos los dispositivos en el bus de E / S. Para entonces, los buses USB y ATA generalmente se manejaban en un chip del sistema, ancho de banda separado. La mayoría de los sistemas actuales utilizan enlaces PCI Express, que se ejecutan punto a punto (sin compartir) entre dispositivos, a un máximo de 984.6 MB / s por enlace. Al igual que con la caché, los canales DRAM, etc., a medida que un sistema de CPU se vuelve más rápido, comienza a tener sentido agregar más enlaces PCIe. Trabajo con micros integrados que ofrecen un solo enlace PCIe; La mayoría de los sistemas de PC admiten 16–24 enlaces PCIe, algunos hasta 64 enlaces PCIe. Los enlaces se pueden “agrupar” en conexiones de varios carriles; La mayoría de las PC tienen ranuras GPU con carriles PCIe x8 o x16.
  • Y finalmente, almacenamiento. Solíamos usar unidades PATA (también conocidas como IDE), que compartían bastante E / S entre unidades y controladores. Eso cambió a la serie ATA, o SATA, que era similar en concepto a PCI Express, ya que son dos cables seriales diferenciales, muy compactos, siempre punto a punto y capaces de leer y escribir simultáneamente. Y, por supuesto, incluso más recientemente, al cambiar los discos duros por SSD basados ​​en flash, luego pasar de SATA a PCI para obtener aún más rendimiento, su almacenamiento permanente se vuelve mucho más rápido.

Para duplicar el rendimiento en todas las cosas de una PC, debe abordar todos los aspectos del rendimiento. Lo que sucede a largo plazo, pero no cada vez que Intel o AMD aumentan un poco el reloj de la CPU.

Y también depende del software que esté ejecutando. Hay aplicaciones que se basan en gran medida en la velocidad de la CPU, las aplicaciones se basan en gran medida en la velocidad de la memoria e incluso en su mayoría se basan en la velocidad de la interacción humana. Cuando estoy haciendo renderizado de video, una CPU más rápida, más CPU, es bastante lineal, porque los requisitos de memoria son bastante modestos. los bucles internos críticos se ajustan en la memoria caché y el trabajo de la CPU es intensivo. El trabajo de bases de datos grandes puede estar determinado más por la velocidad de su memoria. Otras aplicaciones están limitadas en gran medida por la velocidad o la latencia de la unidad.

Porque el “rendimiento” depende de mucho más que solo la velocidad del reloj de la CPU.

También depende de la velocidad de RAM, la velocidad de la unidad de disco, la velocidad de los procesadores de gráficos, la velocidad de RAM de la GPU … y muchas otras cosas.

El grado en que estas cosas importan depende del tipo de software que esté ejecutando. Si es algo donde toda la carga computacional alta ocurre en una pequeña región del software y con una cantidad relativamente pequeña de datos que podrían caber en la (s) caché (s) en el chip y si no hace E / S durante esa carga alta período – entonces podría duplicarse en velocidad. Pero si es algo así como un videojuego, donde se accede a mucha memoria para cada cuadro de cálculos de animación y física, y la mayor parte del trabajo real se realiza en la GPU, entonces es plausible que casi no veas ninguna aceleración en absoluto duplicando la velocidad del reloj de la CPU solo.

Además, la CPU funcionará considerablemente más caliente a 2 GHz, y es posible que la CPU esté realmente “acelerando” su velocidad por debajo de los 2 GHz que especificó para evitar el sobrecalentamiento.

Entonces el reloj es más rápido en la CPU. ¿Qué tan rápido es el controlador del bus frontal y los controladores del chipset? ¿Qué tan rápido es la RAM? El rendimiento solo será tan rápido como su eslabón más débil. Lo más lento serían las cosas externas a la PC (USB, serie, etc.), el siguiente sería el disco duro y el controlador de la unidad. Las unidades han aumentado un poco, pero aún es mucho más lenta que la velocidad de la RAM a la CPU.

Si uno está midiendo cargas de trabajo que utilizan estos otros componentes, no verá el doble de rendimiento. Utilice algunas herramientas de evaluación comparativa para medir un programa que solo depende de la CPU y no de E / S, y supongo que verá más resultados de los que espera.

Si su cerebro o velocidad de pensamiento se duplicaran, ¿podría hablar, escribir o escribir el doble de rápido?

La velocidad del procesador mide solo la velocidad que una computadora lleva a cabo o ejecuta su lista de instrucciones (también conocido como su “código”). Algunas de esas instrucciones son órdenes a otras partes de la computadora: hacen que los datos se lean o escriban en la memoria a corto plazo (“RAM”) de la computadora o en el almacenamiento a largo plazo (por ejemplo, una unidad de disco). Una vez que se ejecuta una instrucción de ese tipo, no se pueden realizar más instrucciones hasta que se complete la operación de datos, un tiempo muy, muy, muy largo en comparación con el tiempo requerido para ejecutar la instrucción, es decir, dar la orden.

Aumentar el rendimiento de una computadora es un desafío de diseño complejo: la mayoría o todas sus partes deben considerarse.

Las especificaciones no son garantías de rendimiento. Hay procesos que están optimizados para procesadores multiproceso, y hay aplicaciones que requieren mucha memoria. Un procesador con menos núcleos, incluso si es más rápido, puede ser notablemente peor en una tarea que una CPU más lenta con más subprocesos.

Un Intel i5–6600 es principalmente diferente de un i7–6700 porque el i7 tiene cuatro “núcleos” de hiperthread. Para la mayoría de los procesos, hay una pérdida insignificante de rendimiento, pero en el caso de algo como el renderizado 3D (como el modelado de gráficos 3D real) , no juegos) el i7 hará volar al i5 fuera del agua. Las diferencias de velocidad son mínimas, y si bien los núcleos hyperthread pueden no ser núcleos lógicos completos, ofrecen un impulso sustancial a ciertos procesos.

Por otro lado, tiene tareas de memoria intensiva. La minería de Ethereum es un buen ejemplo de aplicación de rendimiento basada en ancho de banda de memoria. Si overclockea la GPU de su tarjeta AMD / Nvidia, no hay una gran mejora en la tasa de hash, pero aumenta el reloj de memoria y hay grandes ganancias. Todo depende de la carga de trabajo.

No es que realmente lo haría, pero si tuviera una buena CPU de cuatro u ocho núcleos vinculada a alguna memoria DDR2-667 antigua, el procesador probablemente carecería de datos o se detendría muy a menudo y volvería irrelevante el rendimiento potencial de la CPU.

Idealmente, desea una CPU que tenga un buen equilibrio de especificaciones. Cuatro núcleos, 2.5–3.0 GHz, una buena cantidad de caché (3–8 + MB) y, si es posible, desea que esté vinculado a la memoria DDR4 dual, triple o quad channel rápida.

Además, tenga en cuenta que la informática de GPU es en gran medida independiente de la CPU y la memoria del sistema. Esta es la razón por la cual muchas personas que hacen cripto minería obtendrán algo como una GTX 1070 y la colocarán en una plataforma con una CPU Intel Pentium o AMD muy débil, para ahorrar dinero en hardware y electricidad. En esos casos, desea una placa base con el último estándar PCI Express y asegúrese de que el puerto esté cableado eléctricamente para una interfaz de 16x (a veces los puertos son 8x).

Para resumir, necesita buenas especificaciones generales y hardware que admita estándares modernos para construir una máquina que ofrezca un sólido equilibrio de rendimiento.

El cuello de botella suele ser un hardware externo a la CPU, no la propia CPU. Si la CPU puede manejar los datos que salen del disco duro el doble de rápido, el acceso al disco no aumentará si duplica la velocidad de la CPU. Las impresoras no solo son lentas, son tan buenas como muertas, en lo que respecta a la CPU. También lo es internet. ¿100 Mbps es rápido? Las CPU podrían hacer eso hace muchos años. Y no va a obtener datos tan rápido, los “100mbps” solo aumentan su ancho de banda: 40 o 50 personas pueden descargar a la velocidad máxima al mismo tiempo en ese cable. Entonces, está obteniendo una descarga de 3mbps, y la CPU está sentada allí, sin hacer nada, esperando el próximo byte (o paquete), duplicando la velocidad de la CPU no duplicará la velocidad a la que los datos provienen del enrutador a la computadora .

Para cuando aumentemos la velocidad de todo (y una CPU medio decente puede enviar lo suficiente a una impresora lo suficientemente rápido como para que pasar el papel a través de la impresora lo suficientemente rápido como para imprimirlo a la velocidad máxima de la CPU lo encienda). en el vacío o inventamos un mejor papel), consideraremos que las computadoras cuánticas están pasadas de moda.

Supongamos que tiene un archivo grande en su disco duro, que tarda 10 segundos en leerlo por completo.

Tarda 10 segundos independientemente de si su procesador es de 1 GHz, 2 GHz o 10 GHz.

Un procesador solo puede procesar datos tan rápido como puede obtenerlos, es casi seguro que en algún momento tiene un cuello de botella. Está bloqueado por la memoria, el disco, la red y muchas otras cosas.

Gracias por el A2A.

Para un problema puramente computacional, que no involucra el disco o la pantalla. Duplicar la velocidad de la CPU a la mitad el tiempo de cálculo, si la memoria también es dos veces más rápida. práctica que rara vez es el caso y otros cuellos de botella conspiran para reducir la velocidad.

Si bien es cierto que todavía tiene otros cuellos de botella, como acceder al disco duro, etc., diría que el factor dominante aquí es el calor residual. Aunque la velocidad del reloj puede crecer linealmente, la acumulación de calor crecerá logarítmicamente. Esto significa que, en la práctica, su CPU puede ser capaz de “aumentar” a esas altas velocidades de reloj para una ráfaga corta, pero tendrá que volver a bajar el reloj a medida que se elimine la acumulación de calor. Esa es también la razón por la cual las velocidades de reloj de la CPU realmente no han cambiado tanto en los últimos años. Para las tareas que se pueden realizar en múltiples núcleos, esta es, con mucho, la forma más eficiente de aumentar el rendimiento de la computadora.

Depende de qué tan bueno sea el software que está utilizando. Si el desarrollador lo construyó basado en un procesador de 1 ghz, no se beneficiará de un procesador de 2 ghz. También hay una cosa llamada cuello de botella. Especialmente si todavía estás usando un disco duro. Su disco duro ralentizará cualquier cosa, incluso si está utilizando un procesador de 5 ghz. Cuando lo cambias por un SSD, el cuello de botella se moverá a otro lugar, como el RAM, la GPU o el procesador.

Porque su computadora no es solo el procesador. Por ejemplo, el procesador a veces espera memoria o E / S.

Si bien el procesador puede funcionar el doble de rápido, la RAM y el HDD / SSD siguen funcionando a la misma velocidad. Cualquier sistema es tan rápido como su componente más lento.