que programming geforce developer cuda gpu gpgpu

programming - ¿Cuántos "núcleos CUDA" tiene cada multiprocesador de una GPU?



nvidia cuda driver (3)

Sé que los dispositivos antes de la arquitectura Fermi tenían 8 SP en un solo multiprocesador. ¿El conteo es igual en la arquitectura de Fermi?


El número de multiprocesadores (MP) y el número de núcleos por MP se puede encontrar ejecutando DeviceQuery.exe . Se encuentra en el %NVSDKCOMPUTE_ROOT%/C/bin de la instalación del GPU Computing SDK.

Una mirada al código de DeviceQuery (que se encuentra en %NVSDKCOMPUTE_ROOT%/C/src/DeviceQuery ) revela que la cantidad de núcleos se calcula pasando los xy números de Capacidad CUDA a la función de utilidad ConvertSMVer2Cores .

Del código de ConvertSMVer2Cores se puede ver esta relación entre la capacidad y el recuento de núcleos:

Capability: Cores 10: 8 11: 8 12: 8 13: 8 20: 32 21: 48


La respuesta depende de la propiedad Capacidad de cálculo del dispositivo CUDA. Los números son:

  1. Capacidad de cálculo <= 1.3 -> 8 CUDA Cores / SM
  2. CC == 2.0 -> 32 núcleos CUDA / SM
  3. CC == 2.1 -> 48 núcleos CUDA / SM

Consulte el apéndice G de la Guía de programación de CUDA C.


Actualización de la respuesta de @ AshwinNanjappa para CUDA 7.5:

Compute Capability # Cores ----------------------- 1.x: 8 2.0: 32 2.1: 48 3.x: 192 5.x: 128

Notas:

  • CUDA 7.5 ya no es compatible con dispositivos con capacidad informática 1.x.
  • Estos no son realmente ''núcleos'' en el sentido de núcleos de CPU. Vea esta pregunta aquí en .
  • En las GPU de Maxwell (5.x), el número de ''núcleos'' por multiprocesador ha disminuido .
  • $CUDA_SAMPLES_DIR/common/inc/helper_cuda.h información adicional de $CUDA_SAMPLES_DIR/common/inc/helper_cuda.h .