¿Hay alguna parte de OSX que obtenga un impulso de velocidad significativo con las instrucciones de Intel AES?

3

He estado comparando algunas especificaciones entre los modelos de Mac Pro, específicamente con el salto de Harpertown (a.k.a. Core 2) a Gulftown / Westmere (a.k.a. Core i7).

Si bien se esperaban aumentos incrementales en el rendimiento en todo el tablero, el salto de referencia más significativo es para el conjunto de instrucciones AES que fueron introducidos en la generación posterior; del orden de 24x más rápido. He entendido lo suficiente como para comprender que se usa para el cifrado y que cosas como BitLocker y SSH verían mejoras, pero casi parece que esas se pasarían desapercibidas en el uso típico.

Mi pregunta es, ¿hay alguna parte de OSX que se beneficie de AES que genere mejoras notables en el rendimiento? Tal vez, como mínimo, ¿verían una mejora las conexiones HTTPS en un navegador web? Sé que es un poco exagerado, pero vale la pena preguntar :-)

    
pregunta bjb 18.05.2016 - 19:35

1 respuesta

2

Entonces ... Un poco de curiosidad me lleva a una conclusión simple: es poco probable que Apple le diga dónde ellos usan las instrucciones AES-NI dentro de Mac OS o el resto de su software, pero Están definitivamente presentes y disponibles.

En primer lugar, Intel habla un poco sobre AES-NI y donde se usa. Algunos de los comentarios hablan sobre su presencia o falta en los comentarios. Dado que tengo Homebrew and wine instalado en mi Mac, seguí las instrucciones interesantes here para probar si la dependencia de vino de openssl es capaz de usar AES:

$ openssl speed aes-256-c
...
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-256 cbc      69308.49k    74198.23k    75165.95k    74875.63k    76098.51k

$ openssl speed -evp aes-256-cbc
...
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-256-cbc     421057.71k   432531.16k   447445.08k   450021.03k   444866.56k

Estas cifras coinciden ampliamente con la cita de cyberciti sobre la mejora del rendimiento 6x utilizando AES-NI.

Finalmente, tenemos algunas pruebas reales en la propia comunidad del SE: enlace .

Aparentemente, Apple solía proporcionar una API para Mac OS que no permitía el uso directo de las instrucciones AES-NI. La solución alternativa solía ser el uso del compilador de Intel o la creación de gcc desde la fuente. Parece que desde la versión 4.6.3, esto ya no es así, y los desarrolladores pueden hacer uso de AES-NI si así lo desean. Las mejoras de rendimiento son, entonces, una función de los desarrolladores, no del sistema operativo.

    
respondido por el agentroadkill 18.05.2016 - 20:11

Lea otras preguntas en las etiquetas