¿Sería razonable un zócalo de chip de gráficos estandarizado? [cerrado]

1

No soy un EE, por lo que hago esta conjetura sobre cómo sacar la GPU de la CPU por personas que lo saben mejor que yo. Quizás pueda señalar algo que no conozco sobre la arquitectura moderna de CPU.

Muchos procesadores modernos proporcionan gráficos integrados, con la excepción de algunos procesadores AMD que proporcionan núcleos adicionales en algunos modelos (Ryzen 5 2600) y gráficos integrados en otros (Ryzen 5 2400G). Los gráficos fuera de chip actualmente usan un bus PCI-Express, mientras que los gráficos en chip aparecen para el sistema operativo como algún tipo de dispositivo IO en algún tipo de bus (los detalles no son importantes: determinar el bus y el dispositivo es lo que hace su sistema operativo). p>

A mi entender, una CPU puede ejecutar instrucciones extendidas, como para FPU; mientras que un conjunto de chips de gráficos es una plataforma informática autónoma que realiza E / S en un conjunto de trabajo por sí misma. El software no mezcla las instrucciones de la GPU con las instrucciones de la CPU, y la GPU no funciona en la misma memoria RAM; más bien, la GPU tiene su propia frecuencia de procesamiento, su propio flujo de instrucciones y su propio espacio de RAM.

Esto me sugiere que una GPU sin CPU sería sensata. Al igual que los adaptadores de gráficos PCI-Express modernos usan una interfaz genérica, un chip GPU podría usar una interfaz de socket estandarizada. La CPU podría conectarlo a un bus y proporcionar RAM; mientras que los pines de salida podrían enrutarse a cualquier codificador de chipset a HDMI, DVI u otro puerto de salida de video.

Una CPU podría asignar el rango de video de la GPU a un área de RAM mapeada por DMA, o podría asignar un canal de RAM separado (por ejemplo, una o dos ranuras de RAM) a una segunda MMU que sirve a la GPU, evitando así la disputa con la UPC. Una MMU capaz de acceso compartido también puede deshabilitar su propio acceso a una ranura de RAM y habilitar una MMU secundaria, lo que hace que sea configurable. La CPU permitiría a la GPU DMA acceder a la memoria RAM del sistema para que pudiera copiar datos en su propio espacio de memoria como si fuera una tarjeta gráfica.

Esto parece dejar una compensación: la VRAM sería una RAM normal del sistema, en lugar de GDDR5 o LPDDR4 o lo que sea que el fabricante quiera mantener en su tarjeta.

Si lo anterior es correcto, entonces no hay ninguna ventaja real en integrar la GPU con la CPU en sistemas no integrados; mientras que proporcionar un zócalo de GPU permitiría emparejar mejores CPU con GPU separadas de bajo costo. Una PC de escritorio no tiene sentido como SoC, mientras que un zócalo dedicado para una GPU tiene sentido porque cada PC necesita algún tipo de gráficos y la interfaz se estandariza de forma rutinaria en PCI-Express.

La integración de la MMU y el puente norte / sur tiene mucho sentido debido a la interdependencia del hardware específico y la gran cantidad de datos que se transmiten entre ellos de manera continua: esto ahorra latencia.

Del mismo modo, la tarjeta gráfica DMA atraviesa la MMU en la CPU, acoplándolos estrechamente. La MMU expondría una porción de RAM al igual que funciona con gráficos integrados; Si la GPU quiere administrar la memoria virtual, puede tratar eso como RAM física e integrar su propia MMU, evitando así la sobrecarga de una MMU fuera de chip. Esto no parece ser diferente de la GPU on-die.

¿Todo esto tiene sentido, o hay una ventaja enorme que me falta (además del costo del paquete separado) al tener la GPU en el mismo troquel en lugar de enchufarla en un socket cercano?

    
pregunta John Moser

3 respuestas

6

Creo que estás malinterpretando un poco la situación. Ya hay un zócalo especializado para GPU, ¡eso es lo que es PCI Express x16! Al igual que AGP antes, PCI Express es un bus rápido diseñado para soportar la comunicación entre la CPU y la GPU. (También sucede que es un reemplazo de PCI, que es conveniente para otros periféricos).

Las combinaciones integradas de GPU / CPU apuntan a los sistemas de gama baja y baja potencia. Están diseñados para ser baratos y funcionar bien. La naturaleza de estos sistemas es que sus usuarios, fundamentalmente, no se preocupan por la GPU. Solo está allí para acelerar los gráficos del sistema operativo y quizás hacer algunos juegos ligeros. Las GPU de Intel ya estaban en el extremo de bajo rendimiento, por lo que este era un buen nicho para que se enfocaran. AMD hizo lo mismo para competir en ese espacio. Si te importa el rendimiento de la GPU, compras una GPU discreta.

Entonces, ¿qué significa tener un socket de placa base en lugar de una ranura PCIx? Compartir la RAM del sistema es una muy mala idea porque las GPU de gama alta realmente necesitan una tonelada de RAM. Necesitarías meter otro gran combo de ventilador / disipador de calor en la placa base. Y terminaría básicamente reinventando PCI Express para comunicarse con la GPU.

    
respondido por el Adam Haun
1

Sí, debería ser posible hacer GPU conectable, pero ¿por qué? Creo que el intercambio de memoria será un gran problema: AFAIK, no hay estándares actuales para eso, por lo que el fabricante tendría que crear uno desde cero (mucho trabajo), o vender solo algunos modelos de GPU por CPU . De cualquier manera, tendría que enviar conexiones de memoria a una velocidad extremadamente alta a través de múltiples conectores físicos y lidiar con todo tipo de chips de memoria aleatorios que los usuarios podrían insertar. No creo que esto funcione muy bien en absoluto.

Y si decide agrupar la memoria con la GPU, entonces puede usar PCI Express para el bus, y tal vez cambiar un poco el conector para agregar líneas de salida de video. Luego, obtienes una tarjeta de video móvil: existen, MXM es el último estándar. Ejemplos:

respondido por el theamk
0
  

¿Todo esto tiene sentido, o hay alguna ventaja enorme que estoy?   falta (además del costo del paquete separado) que tiene la GPU en el mismo dado   ¿En lugar de enchufarlo a un enchufe cercano?

Hay una ventaja, la primera es el tamaño que para las computadoras portátiles que tienen la CPU y la GPU en el mismo paquete reduce el tamaño en cierta medida. Reduce las restricciones de diseño en la placa base (todas esas trazas están en el mismo paquete, no en el PCB). El otro beneficio es que, con las dos matrices en el mismo paquete, pueden compartir un disipador de calor, lo que también ahorra espacio (que las tendencias de la industria son más pequeñas, especialmente con las computadoras portátiles y tabletas más nuevas).

En cuanto a la arquitectura, también podrían compartir la memoria, y sería más ventajoso mover la GPU a un enlace de procesador directo. En cuanto a todo, todo sigue enrutado a través del conjunto de chips del puente norte (que es más comúnmente en morir con la CPU). También obtiene trazas más cortas entre las matrices, lo que ahorra tiempo, ya que por ahora los cambios son en su mayoría físicos, ya que los datos aún se enrutan a través del puente norte y los carriles PCI en la mayoría de los chips de CPU / GPU.

Fuente: enlace

    
respondido por el laptop2d

Lea otras preguntas en las etiquetas