Inicio Artículos Tres preguntas para encontrar el procesador adecuado

Tres preguntas para encontrar el procesador adecuado

procesador

Cuando se trata de seleccionar el procesador adecuado, muchos desarrolladores se enfrentan a un gran obstáculo: la oferta en el mercado es enorme. AMD también ofrece una amplia gama de procesadores embebidos. Sin embargo, si se hacen las preguntas adecuadas, encontrar el mejor procesador para sus necesidades no es tan difícil.

Elektronik: Sr. Seyfried, ¿podría resumir las diferencias entre los procesadores AMD Embedded Ryzen™ y EPYC™?

Stefan Seyfried: Lo primero que hay que destacar es que ambas familias de procesadores están construidas sobre la misma microarquitectura: la arquitectura «Zen», en diferentes generaciones. En 2017, comenzamos con «Zen 1» en el sector de consumo, seguido de «Zen 2» y «Zen 3». El núcleo es en gran medida el mismo, independientemente de si fabricamos procesadores embebidos, móviles, de sobremesa, de cliente o de servidor.

Si comparamos los procesadores EPYC embebidos y Ryzen embebidos, la primera gran diferencia son los gráficos. No está integrada en los procesadores EPYC, mientras que los procesadores Ryzen son Unidades de Procesamiento Acelerado (APU), lo que significa que los gráficos están integrados en la pastilla.

¿Cuáles son los mercados que utilizan las APU Ryzen?

Salvo algunas excepciones, los sistemas embebidos necesitan soporte gráfico. Lo que significa que las CPUs Ryzen embebidas se encuentran en HMIs, aplicaciones médicas, así como en PCs industriales. También hay algunas áreas de aplicación inusuales. Los procesadores Ryzen V1000, por ejemplo, se despliegan en el espacio, otros se utilizan para medir distancias entre aviones. Otro campo de aplicación para los procesadores Ryzen embebidos es el sector de la automoción. Por ejemplo, el mayor vendedor de turismos eléctricos de batería equipa su sistema de infoentretenimiento con CPUs Ryzen Embedded y GPUs basadas en RDNA 2.

¿Para qué son más adecuados los procesadores AMD EPYC Embedded?

A diferencia de las CPUs Ryzen Embedded, los procesadores EPYC son más comunes en el segmento edge, donde se deben procesar muchos datos y el alto rendimiento de la CPU es fundamental. La serie EPYC es ideal para esto porque ofrece hasta 128 canales PCIe®. Esto es una ventaja para los sistemas 5G, por ejemplo, ya que requieren un ancho de banda muy elevado. Para las aplicaciones orientadas a servidores, los gráficos también son menos importantes que las altas velocidades de cálculo, con hasta 64 núcleos en la gama EPYC.

Entonces, ¿la serie EPYC embebida es la opción preferida para las aplicaciones de edge computing?

El edge computing abarca un campo enorme y la cuestión de qué procesador es el mejor depende en gran medida del área de aplicación. Tomemos como ejemplo una aplicación edge clásica, como una red para el campus de una empresa 5G. En este caso, un Ryzen V2000 puede ser suficiente, ya que proporciona suficientes canales PCIe al tiempo que ofrece una potencia de diseño térmico (TDP) muy baja y un alto rendimiento de la CPU con hasta 8 núcleos.

En el otro extremo de la escala, tenemos las clásicas aplicaciones edge que conectan un gran número de dispositivos IoT en una fábrica. Están diseñadas con el único propósito de procesar datos. En este caso, una CPU EPYC con sus numerosos canales PCIe puede ser más adecuada. Como se puede ver, la elección del procesador es muy específica para la aplicación.

Entonces, ¿el desarrollador debe elegir el procesador en función del caso de uso individual?

Exactamente. Esa es también la razón por la que los fabricantes de módulos COM como congatec o Kontron ofrecen diferentes módulos con distintos procesadores. De este modo, existe la opción adecuada para cada desarrollador y para cada aplicación.

¿Significa esto que los fabricantes de módulos COM deberían adoptar diferentes procesadores?

Sí, porque no se pueden abordar todas las oportunidades con un solo procesador. Si los fabricantes de módulos quieren cubrir todo el mercado, deberían utilizar tanto los procesadores Ryzen como los EPYC. Si dependieran únicamente de las CPU Ryzen, se perderían todo el segmento de las redes y gran parte del de los edge. Esto dejaría sólo el clásico sector de los PC industriales y las pasarelas de IoT. Si se observan las tasas de crecimiento de las redes y el almacenamiento edge, sería una pena despreciar este segmento.

¿Cuándo elige un desarrollador una CPU de AMD y por qué?

La primera pregunta que los desarrolladores deben hacerse siempre es: ¿x86 o Arm? A fin de cuentas, x86 se apoya en un ecosistema más amplio que Arm. Por ecosistema me refiero a las herramientas de desarrollo, pero también a los compiladores o al software terminado. La segunda cuestión es encontrar personas que programen el software. Especialmente en las universidades, prácticamente todos los estudiantes programan en x86, lo que supone una gran ventaja para nosotros. Así que, además de las ventajas de rendimiento, el rico ecosistema es otra razón por la que la elección recae en x86 una y otra vez.

Arm, en cambio, está más limitado en cuanto al ecosistema. No obstante, Arm es interesante para muchas aplicaciones, especialmente en el rango de ultrabajo consumo. Sin embargo, cuando se trata de ofrecer la solución de software más flexible posible, x86 es muy superior.

Sí, pero incluso dentro del ecosistema x86, la elección es enorme…

Así es. AMD tiene una enorme selección de CPUs, desde Ryzen R2000/V2000 y EPYC 3000 hasta las variantes EPYC 7001, 7002 y la nueva 7003. Otros fabricantes de procesadores ofrecen gamas igualmente amplias. Así que los desarrolladores tienen que preguntarse:

– ¿Qué quiero conseguir con mi aplicación? ¿Qué funciones básicas necesita mi sistema?

– ¿Cuáles son mis requisitos de gráficos y E/S?

– ¿Cuál es el TDP máximo que necesito?

Respondiendo a estas tres preguntas, los desarrolladores pueden reducir la elección de unos 50 procesadores a unos 10. Esto facilita la decisión. Esto hace que la decisión sea mucho más fácil.

Muchas aplicaciones edge necesitan una gran potencia de cálculo en paralelo, a menudo con el soporte de las GPU. ¿Hasta qué punto cubre AMD estas necesidades?

AMD llegó por primera vez a los gráficos a través de la adquisición de ATI. Muy rápidamente después, AMD empezó a integrar las GPU con las CPU en las APU. Una CPU con GPU y más lógica integrada tiene un rendimiento mucho mayor del que el usuario medio necesitaba en el pasado. Por eso nos esforzamos en desarrollar estándares abiertos como OpenCL para acelerar el uso de estas arquitecturas de sistemas heterogéneos y cambiar la forma de utilizar los sistemas embebidos. También fuimos los primeros en hablar de la informática ubicua, que ahora se ha convertido en la Industria 4.0, la IIoT y la digitalización.

Otro ejemplo es Windows ML, el complemento de aprendizaje automático de Windows IoT. Facilita a los desarrolladores la utilización de los gráficos como potencia de cálculo. Estos aceleradores son una parte importante de la estrategia de AMD. También está la serie AMD Instinct™ de tarjetas aceleradoras para aplicaciones de centros de datos. Éstas han tenido mucho éxito, especialmente en los dos últimos años. Hemos ganado muchos proyectos nuevos en las áreas de HPC y aplicaciones en la nube, para las que también suministramos una pila de software completa llamada AMD ROCm™.

Nvidia ha lanzado recientemente su primera CPU al mercado. ¿Ve a Nvidia como un competidor serio en el mercado de las CPU?

En mi zona, todavía no he oído que los clientes se hayan pasado a Nvidia. Sin embargo, en general, nos tomamos en serio a todos los competidores. Y estamos acostumbrados a competir con los más fuertes del sector, tanto en lo que respecta a las CPU como a las GPU. Siempre será así, por eso no nos quedamos quietos, sino que desarrollamos continuamente nuestros productos para obtener ventajas competitivas una y otra vez. La arquitectura «Zen» es un ejemplo excelente. La combinación de CPUs y GPUs excepcionalmente buenas también nos convierte en un competidor especialmente potente. Por tanto, nos vemos en una posición fuerte entre la competencia.

¿Cómo cumplen los requisitos de seguridad de las aplicaciones embebidas?

De nuevo, el hecho de que Ryzen y EPYC se basen en el mismo núcleo juega a nuestro favor. Significa que los temas de seguridad son los mismos para ambas familias. Hay algunas características que sólo se incluyen en las CPUs EPYC, ya que no son relevantes para los clientes. Un ejemplo es la virtualización segura, que significa que las instancias virtuales no pueden espiarse entre sí, ya que cada una se ejecuta en una zona de memoria cifrada. Estas características no se encuentran en la gama Ryzen.

Sin embargo, la arquitectura por sí sola no es suficiente…

Seamos realistas: los hackers siempre irán un paso por delante. Podemos solucionar los puntos débiles de seguridad que son detectables hoy en día, esa es nuestra responsabilidad. Sin embargo, siempre tendremos que trabajar en actualizaciones y nuevas funciones de seguridad. Con nuestros procesadores, se puede cifrar toda la zona de memoria, por ejemplo. Eso es muy importante para los PC industriales, que suelen trabajar con memorias conectadas.

Además, hemos implementado la virtualización cifrada segura en nuestros procesadores EPYC. Google ha empezado a utilizarla recientemente en sus instancias de Nube Confidencial. Cualquiera que se conecte a las VM confidenciales específicas de Google Cloud puede decidir si quiere una instancia tan segura. Ponemos mucho énfasis en nuestras características de seguridad porque reconocemos que es un punto de venta.

Muchas gracias por la interesante entrevista Sr. Seyfried.

Cita: «La elección del procesador depende mucho de la aplicación específica».

Stefan Seyfried es director de ventas de sistemas embebidos de AMD. Este ingeniero eléctrico lleva más de 25 años en AMD.