Así rinde el Intel Core i9-9900K con las mitigaciones de hardware para Spectre y Meltdown

Escrito por Javier (Javisoft) López

Con el lanzamiento de la novena generación de procesadores Intel el gigante azul introdujo algunas novedades en esta serie de CPUs que todos conocemos. Pero pudo pasar desapercibido las mitigaciones de hardware que Intel implementó para combatir las dos principales vulnerabilidades que afectan a sus procesadores, Spectre y Meltdown. ¿Qué rendimiento pierde un i9-9900K con dichas mitigaciones?

¿Qué son Spectre y Meltdown?

intel novena generacion inmune meltdown y spectre

Son dos vectores de ataque contra los microprocesadores de prácticamente cualquier fabricante del mundo, son dos vulnerabilidades que se basan en el sistema de ataque de “side-channel” a través del sistema de especulación del procesador.

El problema es que, como buena vulnerabilidad, deja los datos del usuario a disposición del atacante y donde este puede incluso acceder a la memoria del sistema. Todo se agrava si tenemos en cuenta que a través de descubrir estas vulnerabilidades otras similares han salido a escena aunque siguen su misma senda.

La solución pasaría por una reestructuración completa de cada arquitectura para evitar los accesos a los datos, pero esto aparte de complicado es tremendamente caro y obligaría a todos los fabricantes del mundo a variar sus roadmaps completamente.

Entonces ¿cómo abordar este problema? Lo más sencillo a veces es lo más eficaz en estos casos donde el tiempo es determinante. Tanto los fabricantes como Microsoft y el entorno de Linux lanzaron contramedidas para paliar dichas vulnerabilidades, de modo que por parte de los fabricantes se lanzaron (gracias a los ensambladores de placas base) BIOS con actualizaciones de microcódigo, mientras que por parte de los S.O se parchearon dichas vulnerabilidades con actualizaciones del sistema.

Esto no es más que una solución de software para un problema creado en el hardware, por lo tanto y como suele ocurrir en estos casos se perdió un poco de rendimiento en el camino.

Vulnerabilidades-Intel

Por suerte, a cada mejora de la arquitectura de Intel y AMD estos han añadido correcciones por hardware ante diferentes variantes de dichas vulnerabilidades, entonces ¿qué rendimiento puede perder ahora una arquitectura como Coffee Lake Refresh en un i9-9900K?

Teniendo en cuenta el cuadro de arriba, vemos como CL-R solo ofrece protección por hardware para la variante 3 de Meltdown y la variante 5 así que será interesante ver que rendimiento puede llegar a perder.

i9-9900K vs i7 8086K

Para las pruebas se utilizaron un i9-9900K y un i7-8086K, donde en cada procesador se deshabilitó el HT y se fijó a cuatro núcleos su conteo de cores. Además, la frecuencia se redujo a 3 GHz en ambos casos y se usó el mismo hardware para ambos: ASRock Z390 Pro Gaming con BIOS P3.2 y 4X8 GB Crucial Ballistix DDR4 2666 MHz junto con una MSI GTX 1080 para el apartado gaming.

Spectre+Meltdown rendimiento

Como vemos, los datos no son nada espectaculares como podríamos pensar en un primer momento. Si hacemos la media global el resultado es de una pérdida de -0.378%, lo cual está por debajo incluso del margen de error, ya que este siempre se estipula entre un 0.5% y 1%.

Esto parece ser una evidencia del buen hacer de los parches por software, ya que las implementaciones por hardware parecen ser una vertiente de lo visto por software.

Quedaría por ver las mejoras implementadas en Cascade Lake, ya que cubrirá la variante 2 por hardware y esto puede significar una pequeña caída de rendimiento extra.

Fuente > Anandtech

Continúa leyendo
  • Nikolo666

    No está claro como lo hicieron, porque compararon esos 2, ¿Porque no hay BIOS sin parche para el 9900k?.
    El 9900k tendría bastante más caché l3.
    Anandtech parece que no es de fiar.

    • Javisoft

      Pues porque el 9900K tiene mitigaciones de hardware y el 8700K no XD.

      Se han capado a 4 cores ambos procesadores y el ratio de L3 por core es el mismo para los dos, 2 MB de L3 por núcleo.

      Un saludo !!

      • Nikolo666

        Si están comparando los dos porque el 9900k corre algunos parches por hardware, ¿No debería estar la flechita siempre para arriba?, Supongo que lo que hace es correr uno sin parches y el 9900 con ellos.
        Al configurarlos de solo 4 núcleos los 2 , el 9900k termina teniendo más l3 por núcleo.

        • Javisoft

          Una mitigación de seguridad de este tipo no va a ayudar al rendimiento, sino lo contrario.

          Lo que se está demostrando es que tanto por hardware como por software el rendimiento es el mismo.

          El tema de la caché ya lo he comentado, 8 mb para ambos, 2 mb por núcleo.

          • Nikolo666

            Ah, entonces captaron también la caché
            Saludos.

          • Javisoft

            Claro, la caché va unida a los núcleos como una unidad, si capas núcleos capas su caché.

            Un saludo!

          • Nikolo666

            No es algo automático, la caché l3 es compartida por todos los núcleos, y si te fijas en el ryzen 1500x o en todos los ryzen de menos de 8 núcleos verás que su caché no disminuye.
            Saludos

          • Javisoft

            Eso no es cierto, confundes compartida con asociada.

            La caché y su proporción disminuye a menor numero de núcleos.

            El problema son los chiplets, el 2600x tiene la misma L3 que el 2700X por razones obvias, pero el 2500x evidentemente no.

            Intel no funciona así, sino como una unidad, ergo lo que comento es correcto 🙂

            Un saludo!

          • Nikolo666

            La l3 tiene una función enfocada al multinucleo, más que ha ser un respaldo de la l2, desde la l3 los núcleos se asocian y comparten datos.
            Por otra parte los ccx, el 2600 serían 2 de 3 núcleos que tienen la misma caché que 2 de 4, el 2500 no me acuerdo, pero el 1500x tenían la misma caché que el 1700 y rendia más que el 1300 con la mitad de caché.

          • Javisoft

            No es así exactamente, la L3 es compartida por los núcleos dentro de cada CCX y si es necesario es asociativa con el resto de CCX a través de IF, pero eso penaliza enormemente ya que es de tipo victim, y por eso este caso casi no se da y es uno de los motivos por los que el 2500x ya no incluye los absurdos 16 mb de L3 del 1500 XD.

            Un saludo.

          • Nikolo666

            Es verdad, el hecho de que sea victim cache a diferencia de los intel, hace pensar que es absurdo mantener la cantidad de cache par menos nucleos, pero el 1500x sorpresivamente rendia mas que el 1400 o 1300 con la mitad de cache, asi que no es tan victim como se piensa.
            El hecho es que si vos configuras con el ryzen master (no recuerdo bien el nombre) a menos nucleos, la cantidad de cache sigue intacta, por lo que no es algo automatico.

          • Javisoft

            Que la caché sea victim no implica un mejor rendimiento, sino peor y obligó a AMD a ampliar la L2 para evitar al máximo el acceso a la L3.

            El tema de los núcleos es lo que te digo, va por CCX.

            Pero esto da igual, en Intel no funciona así y es lo que importa.

  • ReichelAceitada

    En el mundo real, quien se ve afectado de estas vulnerabilidades??? Esto es como vacunarse por la peor enfermedad del mundo pero que solo afecta a koalas.

    • Javisoft

      Se ven afectadas todas las arquitecturas desde hace 10 años para delante, dependiendo de la arquitectura en mayor o menor medida.

      Pero vaya, que para eso están las mitigaciones por software o hardware. El tema es cuánto rendimiento se pierde por dichas mitigaciones y ahí está lo interesante.

  • Rubén Zashacion

    ¿Por qué se desabilito el HT y solo se activaron 4 núcleos?

    ¿Esto mejora el resultado o lo empeora?