mirror of
https://github.com/NVIDIA/cuda-samples.git
synced 2026-10-13 00:08:26 +08:00
CUDA 13.4 samples update - v13.4-public
Release 13.4 of the CUDA Samples supported by CUDA Toolkit 13.4. See Changelog for more information.
This commit is contained in:
@@ -1,9 +1,26 @@
|
||||
cmake_minimum_required(VERSION 3.20)
|
||||
|
||||
set(SAMPLE_DISALLOW_ARCHS 75)
|
||||
|
||||
include("${CMAKE_CURRENT_SOURCE_DIR}/../../../cmake/DetectCudaArch.cmake")
|
||||
|
||||
if(SAMPLE_SKIP_BUILD)
|
||||
return()
|
||||
endif()
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../../../cmake/Modules")
|
||||
|
||||
project(tileMatmulAutotuner LANGUAGES C CXX CUDA)
|
||||
|
||||
# Tile samples need C++20. If the host or CUDA compiler can't provide it,
|
||||
# skip this sample instead of aborting configure.
|
||||
if(NOT "cxx_std_20" IN_LIST CMAKE_CXX_COMPILE_FEATURES
|
||||
OR (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11)
|
||||
OR NOT "cuda_std_20" IN_LIST CMAKE_CUDA_COMPILE_FEATURES)
|
||||
message(STATUS "Compiler lacks required C++20 support - skipping ${PROJECT_NAME}")
|
||||
return()
|
||||
endif()
|
||||
|
||||
find_package(CUDAToolkit REQUIRED)
|
||||
|
||||
get_filename_component(CUDA_TOOLKIT_BIN_DIR "${CMAKE_CUDA_COMPILER}" DIRECTORY)
|
||||
@@ -12,9 +29,6 @@ find_program(TILEIRAS_EXECUTABLE tileiras
|
||||
REQUIRED
|
||||
)
|
||||
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
|
||||
set(CMAKE_CUDA_ARCHITECTURES 80 86 87 89 90 100 110 120)
|
||||
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --enable-tile")
|
||||
|
||||
if(ENABLE_CUDA_DEBUG)
|
||||
@@ -23,6 +37,12 @@ else()
|
||||
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -lineinfo") # add line information to all builds for debug tools (exclusive to -G option)
|
||||
endif()
|
||||
|
||||
# This sample is not supported on QNX (needs tileiras/nvcc at runtime).
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "QNX")
|
||||
message(STATUS "Will not build sample ${PROJECT_NAME} - not supported on QNX")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Include directories and libraries
|
||||
include_directories(../../../Common ../Benchmark_Common)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user