El rendimiento de AMD Ryzen estaría viéndose afectado por un bug del scheduler de Windows 10

 

 

Un nuevo bug se ha encontrado en el scheduler de Windows 10, afectando negativamente al rendimiento de Ryzen. El bug descubierto se ha confirmado en las versiones de Windows 10, pero no en Windows 7, mientras que se desconoce todavia si Windows 8.1 podría estar afectado por el mismo problema.El problema residiría en que el scheduler de Windows 10 no diferencia entre los núcleos físicos de Ryzen y los hilos virtuales creados por la tecnología SMT de AMD, la cual proporciona dos hilos de ejecución por cada núcleo.

Cada núcleo de Ryzen funciona de manera que tiene asignado el numero máximo de instrucciones por hilo apoyándose en el secundiario (virtual) logrando así el máximo rendimiento posible en caso de necesitarse. En la teoría esto permite que si un núcleo está con una carga cercana al 100%, este segundo hilo pueda aprovechar los tiempos muertos para intercarlar cálculos, lo que suele significar en aprovechar entre un 20% y el 30% de este núcleo, cuando las tareas se dividen en multitud de hilos.

Es un caso muy similar al del Hyper-Threading de Intel que logra resultados similares, pero, en el caso del HT de Intel, Windows 10 reconoce los hilos creados por HT y solo les asigna las tareas en función de su carga, por lo que en la practica permite aprovechar mucho mejor esta tecnología y no satura los hilos HT con trabajos que deberían asignarse a los núcleos físicos.

En el caso del SMT Windows 10 no sabe diferenciar entre que núcleos son físicos y que hilos corresponden al SMT, por lo que asigna las tareas pensando que todos son núcleos físicos, por lo que un hilo SMT se puede encontrar con la carga que le correspondería a un núcleo físico provocando importantes cuellos de botella afectando al rendimiento final de Ryzen, algo que explicaría el problema de algunos juegos con Ryzen respecto a sus competidores Intel y por que en otros benchmark donde el trabajo va realizándose con los recursos disponibles de cada hilo por separado si se equiparan los resultados, ya que es fácil imaginarse que le pasaría a un juego si se le asigna un proceso grande de núcleo físico a uno de SMT, teniendo este solo entre el 20 y el 30% del potencial de proceso, cuello de botella seguido de una bajada de framerate importante.

Además de este problema, Windows 10 estaría calculando mal la cache disponible de los procesadores Ryzen, creyendo que estos tienen 136MB, cuando la realidad es que disponen de 20MB de L2+L3:

 

Windows 10 Scheduler Single Core Thread Mapping:

  • *————— Data Cache 0, Level 1, 32 KB, Assoc 8, LineSize 64
  • *————— Instruction Cache 0, Level 1, 64 KB, Assoc 4, LineSize 64
  • *————— Unified Cache 0, Level 2, 512 KB, Assoc 8, LineSize 64
  • *————— Unified Cache 1, Level 3, 16 MB, Assoc 16, LineSize 64 –
  • *————– Data Cache 1, Level 1, 32 KB, Assoc 8, LineSize 64 –
  • *————– Instruction Cache 1, Level 1, 64 KB, Assoc 4, LineSize 64 –
  • *————– Unified Cache 2, Level 2, 512 KB, Assoc 8, LineSize 64 –
  • *————– Unified Cache 3, Level 3, 16 MB, Assoc 16, LineSize 64

 

Esto explicaría de alguna manera por que los AMD Ryzen tienen problemas en determinado tipo de tareas y luego recuperan rendimiento cuando el SMT se desactiva, por ahora las únicas maneras de resolver el problema son usar Windows 7 o desactivar el SMT en los nuevos procesadores Ryzen, al menos hasta que Microsoft resuelva el problema de su scheduler y este reconozca que hilos pertenecen al SMT repartiendo mejor la carga.

Fuente: Wccftech

  • Stronk

    Que montaña rusa!, hace una semana era la gran esperanza, nos llevamos un palo después de las primeras review… y ahora esperando que alguien vuleva a testear con win 7…

    • Daefix

      Bueno, es una arquitectura nueva y Intel en su caso lleva actualizando la suya años, como todo lo nuevo siempre hay un periodo de adaptación.

      • KailKatarn

        Eso en la mainstream que llevan puliendo sandy bridge 6 años, pero en lo que es la entusiasta donde ya están ofreciendo 10+10 con el 6950X que va como una moto y con mucho I+D detrás funcionando excelente desde el segundo 0.

        Y no lo comento como critica a AMD, sino que se pueden sacar productos bien finalizados. AMD últimamente tiene mucha prisa, ya le pasó con los FX donde tuvieron que sacar la revisión rápida de piledriver que mejoraba mucho en temperaturas, voltajes e inclusive IPC.

        De hecho si nos vamos un poquito más atrás sólo hay que recordar lo del Phenom I original que telita con el problemón que tuvieron de salida para luego acabar dando lugar al gran Phenom II y sus grandes Phenom II x6 que ahí siguen dando guerra.

        AMD ultimamente, bueno, mejor dicho casi desde siempre viene demostrando que es mejor comprarle a partir de la revisión y nunca de primeras. Y no es que lo diga yo, es que es lo que demuestran con sus últimos lanzamientos.

    • Alfonso Martines

      si tremendo palo que intel esta bajando sus precios con la salida de
      ryzen…lo que hay que leer…esto se arregla comodamente y en futuras
      revisiones se puede arreglar en fabrica.

      • Stronk

        Hola Alfonso, me malinterpretas, estoy deseando que amd funcione mejor que intel para que el mercado se ponga a precios terrestres y que luego cada uno escoja según necesidades, y de momento la bajada de precios de intel ha sido muy timida sobre todo en gamas altas, para mi insuficiente. Pero estarás de acuerdo conmigo que el arranque de ryzen se ha llevado críticas, muchas de ellas por incondicionales de Intel que buscan cualquier escusa para reirse de la parte contraria cual rivalidades futboleras sin darse cuenta de los beneficios que repercuten de la competencia. Espero que ryzen pueda solcucionar pronto sus problemas con el soft para que esta primera revisión calle alguna boca.