122 votos

¿Cómo puede un procesador hacer más rápido con una actualización del "software"?

Los nuevos procesadores AMD Ryzen están fuera del mercado y, lamentablemente, parece que falta en el juego. Los procesadores Intel son, obviamente, aún más rápido para juegos. Gente, por supuesto, no estaban a favor de este y AMD hizo una declaración diciendo que se está actualizando el firmware o el software para acelerar Ryzen para los juegos.

Me corrija si estoy equivocado, pero el procesador debe tener una estática de firmware para ser compatible con x64 estándar? Si es así no AMD tiene que optimizar los juegos(software) para sus procesadores, que es obviamente imposible? Lo que está pasando ahí a decir tales cosas si parece que es imposible ver las condiciones subyacentes?

Pero puedo estar equivocado (eso espero) así que la Pregunta es:

Es posible lograr una aceleración de un procesador sin necesidad de cambiar el hardware subyacente? Si es posible, ¿cómo se hace? Hay software del lado del firmware para el procesador?

123voto

Ali Chen Puntos 362

Los procesadores modernos son mucho más complicado de lo que uno podría pensar. Ellos son increíblemente complicado, casi más allá de la comprensión de una sola persona. Partiendo de un breve comentario de "horta", se podría contar con los siguientes:

  1. Para empezar, casi todos los hardware interno es configurable en gran medida. Hay miles y miles de registros de configuración con millones y millones de bits individuales que se deben establecer para un CPU para funcionar. Todas las varias capas de la CPU a la memoria caché de interacción tienen configurable tuberías, y varios retardos de sincronización, obviamente, tienen un efecto en el rendimiento general.

  2. Hay cientos de características avanzadas que son puestos por los arquitectos de que la ingeniería no tenía tiempo para validar, por lo que cientos de características están deshabilitadas o de un conjunto a prueba de fallas de la configuración con "pollo bits". Pero puede ser ajustado y activado si se encuentra funcional y útil. Estas características mejoran suele ser validadas en profundidad a lo largo del tiempo, y puede ser poco a poco ha habilitado a través de la vida de un procesador, por diversas microcódigo de parches.

  3. Todos los últimos modelos de Cpu varias unidades internas que son controlados por microprocesadores independientes que están incrustados dentro de los x86 chip de la CPU. Un público surgido de la unidad es el P-Unidad. Los procesadores modernos no pueden funcionar sin agresivo de administración de energía, o que se va a derretir. Sin embargo, en lo profundo de administración de energía está en contradicción con una agresiva entrada-salida de reloj/voltaje de la política, y los cambios en la política de afectar fuertemente el rendimiento general del sistema. Todos los detalles están controlados por el P-Unidad, y puede ser optimizado/afinado por la carga de otro microcódigo parche, como respondido aquí.

  4. Muchos otros aspectos de la interconexión interna son controlados por diferentes procesadores embebidos, que puede ser corregida mediante la carga de microcódigo de los parches en ellos, o de la actualización de la BIOS si es que tiene acceso a estos recursos de la configuración.

En resumen, si bien el hardware de la CPU es de hecho el cableado, la configuración de dicho hardware define mucho su rendimiento, y se puede ajustar para el mejor rendimiento del sistema por medio de actualizaciones de BIOS y embebido de microcódigo de parches.

101voto

bwDraco Puntos 21626

Una variedad de problemas de software en el sistema operativo y aplicación niveles son la causa de un rendimiento subóptimo.

De ocho núcleos Ryzen procesadores constan de dos principales complejos (CCXs), cada uno con cuatro núcleos y 8 MB de caché L3. El acceso a la caché L3 en diferentes CCX es más lento debido a la necesidad de mover los datos más lejos en el Infinito de la Tela (AMD propiedad de caché coherente de interconexión), lo que significa que mueve los hilos de una CCX a otro o de comunicación entre núcleos en diferentes CCXs resultados en la reducción de rendimiento. Esta pena es una reminiscencia de lo que iba a suceder en un multi-socket servidor que ejecuta un sistema operativo que no es NUMA-consciente.

Parece que Windows tiene una tendencia a simplemente mover los procesos en torno a los diferentes núcleos y no reconoce la inter-CCX comunicación pena. Esto significa que Windows puede poner hilos en diferentes CCXs aun cuando al hacerlo no es necesario, reduciendo el rendimiento.

Alemán revisor Juegos de PC Hardware probado un Ryzen 7 1800X con diferentes números de núcleos de movilidad y se encontró que el tener dos CCXs con dos núcleos activados en cada uno produce un rendimiento más lento que tener una CCX habilitado con todos sus núcleos intactos:

PC Games Hardware benchmark result: Battlefield 1

Esto es a pesar del hecho de que el tener sólo una CCX activado significa que sólo 8 MB de caché L3, en vez de los 16 MB. De los Juegos de PC Hardware artículo, a través de Google Translate (énfasis añadido):

[...] Es mucho más emocionante para reconocer el hecho de que el CCX transferencias de datos interferir el uno con el otro, en cualquier caso - a veces más, a veces menos claramente. Las ventajas de la mayor caché L3 (2 + 2 configuración) están en ninguna parte dentro de esta serie de medidas.

Este PC Perspectiva artículo muestra que existe una importante comunicación de latencia entre núcleos en diferentes CCXs, pero muy poca latencia cuando se comunica con núcleos en el mismo CCX. Tenga en cuenta que este artículo sugiere Windows es consciente de la CCX diseño y evita la programación de hilos en diferentes CCXs pero los resultados contradictorios han sido encontrados por los miembros de la comunidad.


Muchos (pero no todos) los juegos de azar de puntos de referencia muestran mayor rendimiento cuando SMT está deshabilitado. Sin embargo, los rumores de que el estado que Windows incorrectamente los horarios como si cada subproceso de hardware como su propio núcleo son incorrectos. Según AMD, esto es causado por el hecho de que muchas de las aplicaciones están optimizadas sólo para procesadores Intel (que no es inesperado dado que AMD ha sido MIA desde el procesador de mercado para unos cinco años). AMD dice que están trabajando con cientos de desarrolladores de juegos para mejorar el rendimiento en Ryzen procesadores. Sin embargo, tengo la sospecha de que una actualización de Windows puede ayudar haciendo más sintonizar el programador de las características del Zen de la arquitectura.

El siguiente ejemplo de Tom's Hardware demuestra la degradación del rendimiento con SMT habilitado:

Tom's Hardware benchmark result: Ashes of the Singularity

TechSpot hizo un análisis en profundidad de rendimiento en los juegos con SMT activado y desactivado , y llegó a resultados muy similares:

TechSpot benchmark result: Deus Ex: Mankind Divided


También hay problemas de administración de energía implicados en estas pruebas. La misma AMD declaración señala que el Windows no es plenamente consciente de las nuevas características en Ryzen como núcleo de estacionamiento y rápido de la frecuencia de reloj de conmutación. Esto es consistente con mejoras en el rendimiento reportado por Tom's Hardware cuando se utiliza la alimentación de Alto Rendimiento plan (consulte la tabla de arriba, HP = Alto Rendimiento). Una actualización de Windows puede añadir soporte para estas características y mejorar el rendimiento.

9voto

Naib Puntos 221

http://wccftech.com/amd-ryzen-launch-aftermath-gaming-performance-amd-response/

1) Principios de la placa base Bios eran ciertamente problemáticos: la desactivación de la funciones no relacionadas apagaría núcleos. La configuración de la memoria overclocking en algunas placas base deshabilitar impulso. Algunas BIOS revisiones llanura producir universalmente suprime el rendimiento.

2) Ryzen beneficios de la desactivación de la Alta Precisión de Temporizadores de Eventos (HPET). La resolución del temporizador de HPET puede causar un observador efecto que puede restar rendimiento. Esta es una opción de BIOS, o una función que puede ser movilidad desde el shell de comandos de Windows.

3) Ryzen beneficios de permitir la alimentación de Alto Rendimiento de perfil. De este modo se anula core parking. En el futuro tendremos un conductor que permite a las personas permanecer en balance y deshabilitar el core parking de todos modos. Los jugadores han estado haciendo esto por un tiempo, demasiado. Yo misspoke, aquí. Quiero para aclarar el beneficio: en modo de Alto Rendimiento permite a la CPU actualización su voltaje/clockspeed en 1ms, frente a la 30ms que toma equilibrada modo. Esto es lo que nuestro conductor va a lograr. Disculpas por el la confusión!

Así que la verdadera pregunta no es ¿cómo puede una BIOS/firmware update hacer un procesador más rápido (se puede hacer, optimización de microcódigo etc...) su más... ¿cómo lisiado es una CPU de buggy BIOS/firmware

6voto

horta Puntos 232

La BIOS es generalmente considerado como el firmware. BIOS puede juguetear con todo tipo de bits en el hardware para cambiar la forma en que el sistema funciona

Así que sí, es totalmente factible para ellos para llevar a cabo un nuevo firmware y por cosas como las velocidades de reloj, o si prefetches están habilitados, o si un determinado núcleo-o IIO-se puede conseguir ciertas preferencias a la caché que tiene el potencial de aumentar el rendimiento de los juegos debido a que la mayoría de los juegos que han sido diseñados en un único subproceso manera.

4voto

Chris Rimmer Puntos 31

No es tanto que las actualizaciones de software hará que el procesador más rápido. Lo que todo el mundo está esperando es que las actualizaciones de software hará que el software más adecuado para Ryzen de la arquitectura, y capaz de aprovechar mejor su rendimiento.

Me corrija si estoy equivocado, pero el procesador debe tener una estática de firmware para ser compatible con x64 estándar?

Casi. Hay un software en la CPU (microcódigo, como se mencionó anteriormente) y que puede influir en el rendimiento. Básicamente sólo X86 especifica los resultados de las operaciones, ¿cómo es exactamente la CPU logra esos resultados es el de los ingenieros del problema. Las probabilidades de microcódigo ajustes juega un gran papel en Ryzen son escasas, aunque, como la diferencia de rendimiento que parece se aplican sobre todo a los juegos que sugiere que la CPU funciona bien, pero algunos juegos en concreto no aprovecharlo bien.

El Sistema Operativo es responsable por tratar de asegurarse de que los programas se extienden a través de la CPU de manera eficiente, lo que puede afectar el rendimiento, pero, en términos generales, ninguno de estos factores son el principal problema para una nueva arquitectura. La mayoría de las mejoras de rendimiento en casos como este vienen como resultado de los desarrolladores escribir código más adecuadas para la nueva arquitectura. Esto no suele suceder entre las generaciones de CPU de Intel como los cambios de diseño no son tremendamente importantes, así que lo que funciona bien en uno es probable que funcione bien en otro.

Ryzen sin embargo es un terreno hasta nuevo diseño, así que todo lo que se ha escrito para satisfacer otras CPUs, por definición, no ha sido escrito para satisfacer Ryzen.

Masivo de simplificar en exceso la situación, la imagen de dos procesadores:

  • Procesador de Uno ha estado en el mercado de un tiempo, y es (por el motivo que sea) muy, muy rápido en la adición de números. El Software está diseñado para probar y utilizar además como tanto como sea posible, para tomar ventaja de esta capacidad.

  • La competencia procesador de tierras en el mercado y es más débil en adición, pero más fuerte en la multiplicación. Todo el software optimizado para utilizar más pesada instrucciones actúa mal en el nuevo procesador, pero el software que no ha sido adaptado para el uso de los lotes, además, lleva a cabo más o menos de manera similar. Algunos programas de software ya puede hacer un montón de multiplicación, y va a hacer mejor en el nuevo Cpu que lo haría en Un Procesador, incluso en el día de su lanzamiento.

Algún tiempo después de su lanzamiento, los desarrolladores podrán empezar a adaptar, usar más la multiplicación en su software, o incluso el diseño de su software para cambiar entre la suma pesada rutas de código, y la multiplicación pesados dependiendo de la arquitectura de la CPU está siendo utilizado.

Este es el tipo de lo que está sucediendo con Ryzen - es una nueva arquitectura que los desarrolladores de software no han optimizado para adaptarse a las características de todavía. Dado el tiempo, los desarrolladores podrán empezar a ajustar su software para llevar a cabo mejor en él. Como la mayoría del software ya está diseñado para funcionar bien en la Cpu Intel (son bastante populares, después de todo!), ellos probablemente no van a beneficiarse de estos cambios mucho.

Hay algunas cargas de trabajo que Intel va a permanecer simplemente más rápido, y algunos que Ryzen ya es más rápido (y más aún) en función del comportamiento subyacente. En la situación en que me dio anteriormente, una pieza de software que sólo hay que añadir las cosas siempre se hacen mejor en el primer procesador, y el software que simplemente hay que multiplicar las cosas siempre se hacen mejor en el segundo -, pero la mayor parte del software es complejo y estas diferencias de nivel a cabo algo.

Si es así no AMD tiene que optimizar los juegos(software) para sus procesadores, que es obviamente imposible?

También vale la pena señalar que lo que AMD han dicho sobre el rendimiento de los juegos es que están trabajando con los desarrolladores de juegos optimizados. Enviar dev sistemas a empresas (en la actualidad hay 300 en la naturaleza, y están dirigidos por 1000 al final del año) y hablar con aquellos cuyos juegos realice mal para ayudar a abordar la cuestión. Que yo sepa, ninguna declaración de que se ha hecho AMD son la optimización de juegos en sí.

En este caso particular Ryzen también está siendo llevado a cabo en algunas circunstancias por las Ventanas de la toma de malas decisiones acerca de que los núcleos de la carga de trabajo actual y los Bios son problemáticos por razones que, simplemente, no pretendo saber acerca de. Sin embargo, esas cuestiones no puede ser el responsable de todos los de la brecha de rendimiento, como son las cargas de trabajo donde Ryzen ya supera a Intel de manera convincente, lo que sugiere que el problema es al menos parcialmente (si no la mayoría) abajo a la particular de los programas de ejecución, en lugar de el sistema operativo o la BIOS como un todo.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: