CMakeLists.txt 2.21 KB
Newer Older
Paul's avatar
Paul committed
1
2
3
4

list(APPEND CMAKE_PREFIX_PATH /opt/rocm /opt/rocm/hip /opt/rocm/hcc)
find_package(miopen)

5
6
7
8
# rocblas
find_package(rocblas REQUIRED PATHS /opt/rocm)
message(STATUS "Build with rocblas")

Paul's avatar
Paul committed
9
10
11
12
if(NOT TARGET MIOpen)
    message(SEND_ERROR "Cant find miopen")
endif()

Paul's avatar
Paul committed
13
add_library(migraphx_device
Paul's avatar
Paul committed
14
    device/add.cpp
Shucai Xiao's avatar
Shucai Xiao committed
15
16
    device/argmax.cpp
    device/argmin.cpp
Khalique's avatar
Khalique committed
17
18
    device/max.cpp
    device/min.cpp
Shucai Xiao's avatar
Shucai Xiao committed
19
20
    device/exp.cpp
    device/log.cpp
21
    device/sin.cpp
Shucai Xiao's avatar
Shucai Xiao committed
22
23
    device/cos.cpp
    device/tan.cpp
24
25
    device/sinh.cpp
    device/cosh.cpp
26
27
28
    device/asin.cpp
    device/acos.cpp
    device/atan.cpp
Paul's avatar
Paul committed
29
    device/add_relu.cpp
30
    device/contiguous.cpp
31
    device/logsoftmax.cpp
Khalique's avatar
Khalique committed
32
    device/softmax.cpp
33
    device/convert.cpp
Khalique's avatar
Khalique committed
34
    device/mul.cpp
35
    device/concat.cpp
36
    device/pad.cpp
37
    device/gather.cpp
38
    device/sub.cpp
Khalique's avatar
Khalique committed
39
    device/clip.cpp
Paul's avatar
Paul committed
40
    device/reduce_sum.cpp
41
    device/reduce_mean.cpp
42
)
Paul's avatar
Paul committed
43
44
set_target_properties(migraphx_device PROPERTIES EXPORT_NAME device)
rocm_clang_tidy_check(migraphx_device)
Paul's avatar
Paul committed
45
target_link_libraries(migraphx_device migraphx hip::device -Wno-invalid-command-line-argument -amdgpu-target=gfx803 -amdgpu-target=gfx900 -amdgpu-target=gfx906)
Paul's avatar
Paul committed
46
47
target_include_directories(migraphx_device PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
target_include_directories(migraphx_device PRIVATE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/device/include>)
48

Paul's avatar
Paul committed
49
add_library(migraphx_gpu
Shucai Xiao's avatar
Shucai Xiao committed
50
51
    argmax.cpp
    argmin.cpp
52
    eliminate_workspace.cpp
Paul's avatar
Paul committed
53
    fuse_ops.cpp
Paul's avatar
Paul committed
54
    hip.cpp
Paul's avatar
Paul committed
55
    target.cpp
Paul's avatar
Paul committed
56
    lowering.cpp
wsttiger's avatar
wsttiger committed
57
58
59
    gemm.cpp
    pooling.cpp
    convolution.cpp
60
    softmax.cpp
61
    logsoftmax.cpp
62
    contiguous.cpp
63
    concat.cpp
64
    relu.cpp
Khalique's avatar
Khalique committed
65
    leaky_relu.cpp
66
    tanh.cpp
67
    batchnorm.cpp
Paul's avatar
Paul committed
68
    write_literals.cpp
69
    rocblas.cpp
Khalique's avatar
Khalique committed
70
71
    sigmoid.cpp
    abs.cpp
Khalique's avatar
Khalique committed
72
    elu.cpp
73
    pad.cpp
74
    gather.cpp
Khalique's avatar
Khalique committed
75
    lrn.cpp
Paul's avatar
Paul committed
76
    schedule_model.cpp
77
    adjust_allocation.cpp
Khalique's avatar
Khalique committed
78
    clip.cpp
Paul's avatar
Paul committed
79
    reduce_sum.cpp
80
    reduce_mean.cpp
Paul's avatar
Paul committed
81
)
Paul's avatar
Paul committed
82
83
84
85
set_target_properties(migraphx_gpu PROPERTIES EXPORT_NAME gpu)
rocm_clang_tidy_check(migraphx_gpu)
target_link_libraries(migraphx_gpu PUBLIC migraphx MIOpen roc::rocblas)
target_link_libraries(migraphx_gpu PRIVATE migraphx_device)
mei-ye's avatar
mei-ye committed
86

Paul's avatar
Paul committed
87
rocm_install_targets(
Paul's avatar
Paul committed
88
  TARGETS migraphx_gpu migraphx_device
Paul's avatar
Paul committed
89
90
91
  INCLUDE
    ${CMAKE_CURRENT_SOURCE_DIR}/include
)
mei-ye's avatar
mei-ye committed
92