CMakeLists.txt 2.0 KB
Newer Older
Z
zhangjinchao01 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
set(CUDA_SOURCES
    src/hl_time.cc
    src/hl_math.cc
    src/hl_cpu_functions.cc
    src/hl_avx_functions.cc)

set(CUDA_CXX_WITH_GPU_SOURCES
    src/hl_cuda_cublas.cc
    src/hl_cuda_cudnn.cc
    src/hl_cuda_device.cc)

set_source_files_properties(${CUDA_CXX_WITH_GPU_SOURCES}
                            PROPERTIES COMPILE_FLAGS "-D__NVCC__")

set_source_files_properties(${CUDA_SOURCES}
                            PROPERTIES COMPILE_FLAGS "-mavx")

set(CUDA_DSO_SOURCES
    src/hl_dso_loader.cc
    src/hl_cudart_wrap.cc)

set(CUDA_CU_SOURCES
    src/hl_perturbation_util.cu
    src/hl_cuda_aggregate.cu
    src/hl_cuda_matrix.cu
    src/hl_cuda_sparse.cu
    src/hl_cuda_cnn.cu
    src/hl_cuda_lstm.cu
    src/hl_top_k.cu
    src/hl_batch_transpose.cu
    src/hl_cuda_sequence.cu
    src/hl_table_apply.cu)

set(CUDA_HEADERS
    include/hl_time.h
    include/hl_dso_loader.h
    include/hl_sequence.h
    include/hl_cuda_cublas.h
    include/hl_batch_transpose.h
    include/hl_avx_functions.h
    include/hl_sparse.h
    include/hl_functions.h
    include/hl_cuda_cudnn.h
    include/hl_activation_functions.h
    include/hl_base.h
    include/stub/hl_cuda_cudnn_stub.h
    include/stub/hl_cuda_stub.h
    include/stub/hl_cuda_cublas_stub.h
    include/stub/hl_cnn_stub.h
    include/stub/hl_lstm_stub.h
    include/stub/hl_sequence_stub.h
    include/stub/hl_aggregate_stub.h
    include/stub/hl_sparse_stub.h
    include/stub/hl_matrix_stub.h
    include/hl_aggregate.h
    include/hl_cuda.h
    include/hl_lstm.h
    include/hl_table_apply.h
    include/hl_gpu.h
    include/hl_top_k.h
    include/hl_matrix.h
    include/hl_cnn.h)

if(WITH_GPU)
    cuda_add_library(paddle_cuda
        ${CUDA_SOURCES}
        ${CUDA_CU_SOURCES}
        ${CUDA_DSO_SOURCES}
        ${CUDA_CXX_WITH_GPU_SOURCES})
else()
    add_library(paddle_cuda ${CUDA_SOURCES})
endif()

add_style_check_target(paddle_cuda ${CUDA_SOURCES})
add_style_check_target(paddle_cuda ${CUDA_HEADERS})
# add_style_check_target(hppl ${HPPL_CU_SOURCES})   # TODO(yuyang18): Format hppl style