mirror of
				https://github.com/NVIDIA/cuda-samples.git
				synced 2025-11-04 07:27:49 +08:00 
			
		
		
		
	Update gencode arguments for separate kernel fatbin builds
This commit is contained in:
		
							parent
							
								
									06d72496c2
								
							
						
					
					
						commit
						e214cd29aa
					
				@ -38,6 +38,12 @@ target_link_libraries(matrixMulDrv PUBLIC
 | 
			
		||||
set(CUDA_FATBIN_FILE "${CMAKE_CURRENT_BINARY_DIR}/matrixMul_kernel64.fatbin")
 | 
			
		||||
set(CUDA_KERNEL_SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/matrixMul_kernel.cu")
 | 
			
		||||
 | 
			
		||||
# Construct GENCODE_FLAGS explicitly from CUDA architectures
 | 
			
		||||
set(GENCODE_FLAGS "")
 | 
			
		||||
foreach(arch ${CMAKE_CUDA_ARCHITECTURES})
 | 
			
		||||
    list(APPEND GENCODE_FLAGS "-gencode=arch=compute_${arch},code=sm_${arch}")
 | 
			
		||||
endforeach()
 | 
			
		||||
 | 
			
		||||
add_custom_command(
 | 
			
		||||
    OUTPUT ${CUDA_FATBIN_FILE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets  ${GENCODE_FLAGS} -o ${CUDA_FATBIN_FILE} -fatbin ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
 | 
			
		||||
@ -40,6 +40,12 @@ target_link_libraries(simpleDrvRuntime PUBLIC
 | 
			
		||||
set(CUDA_FATBIN_FILE "${CMAKE_CURRENT_BINARY_DIR}/vectorAdd_kernel64.fatbin")
 | 
			
		||||
set(CUDA_KERNEL_SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/vectorAdd_kernel.cu")
 | 
			
		||||
 | 
			
		||||
# Construct GENCODE_FLAGS explicitly from CUDA architectures
 | 
			
		||||
set(GENCODE_FLAGS "")
 | 
			
		||||
foreach(arch ${CMAKE_CUDA_ARCHITECTURES})
 | 
			
		||||
    list(APPEND GENCODE_FLAGS "-gencode=arch=compute_${arch},code=sm_${arch}")
 | 
			
		||||
endforeach()
 | 
			
		||||
 | 
			
		||||
add_custom_command(
 | 
			
		||||
    OUTPUT ${CUDA_FATBIN_FILE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets  ${GENCODE_FLAGS} -o ${CUDA_FATBIN_FILE} -fatbin ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
 | 
			
		||||
@ -37,6 +37,12 @@ target_link_libraries(simpleTextureDrv PUBLIC
 | 
			
		||||
set(CUDA_FATBIN_FILE "${CMAKE_CURRENT_BINARY_DIR}/simpleTexture_kernel64.fatbin")
 | 
			
		||||
set(CUDA_KERNEL_SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/simpleTexture_kernel.cu")
 | 
			
		||||
 | 
			
		||||
# Construct GENCODE_FLAGS explicitly from CUDA architectures
 | 
			
		||||
set(GENCODE_FLAGS "")
 | 
			
		||||
foreach(arch ${CMAKE_CUDA_ARCHITECTURES})
 | 
			
		||||
    list(APPEND GENCODE_FLAGS "-gencode=arch=compute_${arch},code=sm_${arch}")
 | 
			
		||||
endforeach()
 | 
			
		||||
 | 
			
		||||
add_custom_command(
 | 
			
		||||
    OUTPUT ${CUDA_FATBIN_FILE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets  ${GENCODE_FLAGS} -o ${CUDA_FATBIN_FILE} -fatbin ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
 | 
			
		||||
@ -37,6 +37,12 @@ target_link_libraries(vectorAddDrv PUBLIC
 | 
			
		||||
set(CUDA_FATBIN_FILE "${CMAKE_CURRENT_BINARY_DIR}/vectorAdd_kernel64.fatbin")
 | 
			
		||||
set(CUDA_KERNEL_SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/vectorAdd_kernel.cu")
 | 
			
		||||
 | 
			
		||||
# Construct GENCODE_FLAGS explicitly from CUDA architectures
 | 
			
		||||
set(GENCODE_FLAGS "")
 | 
			
		||||
foreach(arch ${CMAKE_CUDA_ARCHITECTURES})
 | 
			
		||||
    list(APPEND GENCODE_FLAGS "-gencode=arch=compute_${arch},code=sm_${arch}")
 | 
			
		||||
endforeach()
 | 
			
		||||
 | 
			
		||||
add_custom_command(
 | 
			
		||||
    OUTPUT ${CUDA_FATBIN_FILE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets  ${GENCODE_FLAGS} -o ${CUDA_FATBIN_FILE} -fatbin ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
 | 
			
		||||
@ -40,6 +40,12 @@ else()
 | 
			
		||||
    set(CUDA_FATBIN_FILE "${CMAKE_CURRENT_BINARY_DIR}/vectorAdd_kernel64.fatbin")
 | 
			
		||||
    set(CUDA_KERNEL_SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/vectorAdd_kernel.cu")
 | 
			
		||||
 | 
			
		||||
    # Construct GENCODE_FLAGS explicitly from CUDA architectures
 | 
			
		||||
    set(GENCODE_FLAGS "")
 | 
			
		||||
    foreach(arch ${CMAKE_CUDA_ARCHITECTURES})
 | 
			
		||||
        list(APPEND GENCODE_FLAGS "-gencode=arch=compute_${arch},code=sm_${arch}")
 | 
			
		||||
    endforeach()
 | 
			
		||||
 | 
			
		||||
    add_custom_command(
 | 
			
		||||
        OUTPUT ${CUDA_FATBIN_FILE}
 | 
			
		||||
        COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets  ${GENCODE_FLAGS} -o ${CUDA_FATBIN_FILE} -fatbin ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
 | 
			
		||||
@ -42,6 +42,12 @@ endif()
 | 
			
		||||
set(CUDA_FATBIN_FILE "${CMAKE_CURRENT_BINARY_DIR}/threadMigration_kernel64.fatbin")
 | 
			
		||||
set(CUDA_KERNEL_SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/threadMigration_kernel.cu")
 | 
			
		||||
 | 
			
		||||
# Construct GENCODE_FLAGS explicitly from CUDA architectures
 | 
			
		||||
set(GENCODE_FLAGS "")
 | 
			
		||||
foreach(arch ${CMAKE_CUDA_ARCHITECTURES})
 | 
			
		||||
    list(APPEND GENCODE_FLAGS "-gencode=arch=compute_${arch},code=sm_${arch}")
 | 
			
		||||
endforeach()
 | 
			
		||||
 | 
			
		||||
add_custom_command(
 | 
			
		||||
    OUTPUT ${CUDA_FATBIN_FILE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets  ${GENCODE_FLAGS} -o ${CUDA_FATBIN_FILE} -fatbin ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
 | 
			
		||||
@ -44,7 +44,7 @@ set(CUDA_KERNEL_SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/memMapIpc_kernel.cu")
 | 
			
		||||
 | 
			
		||||
add_custom_command(
 | 
			
		||||
    OUTPUT ${CUDA_PTX_FILE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets  ${GENCODE_FLAGS} -o ${CUDA_PTX_FILE} -ptx ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets -o ${CUDA_PTX_FILE} -ptx ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
    DEPENDS ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
    COMMENT "Building CUDA PTX: ${CUDA_PTX_FILE}"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@ -41,7 +41,7 @@ set(CUDA_KERNEL_SOURCE "${CMAKE_CURRENT_SOURCE_DIR}/ptxjit_kernel.cu")
 | 
			
		||||
 | 
			
		||||
add_custom_command(
 | 
			
		||||
    OUTPUT ${CUDA_PTX_FILE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets  ${GENCODE_FLAGS} -o ${CUDA_PTX_FILE} -ptx ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
    COMMAND ${CMAKE_CUDA_COMPILER} ${INCLUDES} ${ALL_CCFLAGS} -Wno-deprecated-gpu-targets -o ${CUDA_PTX_FILE} -ptx ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
    DEPENDS ${CUDA_KERNEL_SOURCE}
 | 
			
		||||
    COMMENT "Building CUDA PTX: ${CUDA_PTX_FILE}"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user