Al compilar su código CUDA, debe seleccionar para qué arquitectura se está generando su código. nvcc
proporciona dos parámetros para especificar esta arquitectura, básicamente:¿Cuáles son los valores predeterminados para las opciones de arco y código cuando se usa nvcc?
arch
especifica el arquictecture virtual, que puede sercompute_10
,compute_11
, etc.code
especifica la arquitectura real, que puede sersm_10
,sm_11
, etc.
Así que un comando como este:
nvcc x.cu -arch=compute_13 -code=sm_13
Generará código 'cubin' para dispositivos con capacidad de cómputo 1.3. Por favor corrígeme si estoy equivocado. Lo que me gustaría saber es cuáles son los valores predeterminados para estos dos parámetros? ¿Cuál es la arquitectura predeterminada que usa nvcc cuando no se especifica ningún valor paraarch
ocode
?
Si compila su código con el indicador detallado, verá la arquitectura virtual predeterminada utilizada. –