CMakeLists.txt 2.52 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
    device/exp.cpp
Shucai Xiao's avatar
Shucai Xiao committed
20
    device/erf.cpp
Shucai Xiao's avatar
Shucai Xiao committed
21
    device/log.cpp
22
    device/sin.cpp
Shucai Xiao's avatar
Shucai Xiao committed
23
24
    device/cos.cpp
    device/tan.cpp
25
26
    device/sinh.cpp
    device/cosh.cpp
27
    device/tanh.cpp
28
29
30
    device/asin.cpp
    device/acos.cpp
    device/atan.cpp
31
    device/relu.cpp
Paul's avatar
Paul committed
32
    device/add_relu.cpp
33
    device/contiguous.cpp
34
    device/logsoftmax.cpp
Khalique's avatar
Khalique committed
35
    device/softmax.cpp
36
    device/convert.cpp
Khalique's avatar
Khalique committed
37
    device/mul.cpp
38
    device/concat.cpp
39
    device/pad.cpp
40
    device/gather.cpp
41
    device/sub.cpp
42
    device/int8_gemm_pack.cpp
43
    device/div.cpp
Khalique's avatar
Khalique committed
44
    device/clip.cpp
Paul's avatar
Paul committed
45
    device/reduce_sum.cpp
Khalique's avatar
Khalique committed
46
    device/rsqrt.cpp
47
    device/sqrt.cpp
48
    device/reduce_mean.cpp
Shucai Xiao's avatar
Shucai Xiao committed
49
    device/pow.cpp
Khalique's avatar
Khalique committed
50
    device/sqdiff.cpp
Shucai Xiao's avatar
Shucai Xiao committed
51
    device/sign.cpp
52
)
Paul's avatar
Paul committed
53
54
set_target_properties(migraphx_device PROPERTIES EXPORT_NAME device)
rocm_clang_tidy_check(migraphx_device)
Paul's avatar
Paul committed
55
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
56
57
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>)
58

Paul's avatar
Paul committed
59
add_library(migraphx_gpu
Shucai Xiao's avatar
Shucai Xiao committed
60
61
    argmax.cpp
    argmin.cpp
62
    eliminate_workspace.cpp
Paul's avatar
Paul committed
63
    fuse_ops.cpp
Paul's avatar
Paul committed
64
    hip.cpp
Paul's avatar
Paul committed
65
    target.cpp
Paul's avatar
Paul committed
66
    lowering.cpp
wsttiger's avatar
wsttiger committed
67
    gemm.cpp
68
    quant_gemm.cpp
wsttiger's avatar
wsttiger committed
69
70
    pooling.cpp
    convolution.cpp
71
    quant_convolution.cpp
72
    softmax.cpp
73
    logsoftmax.cpp
74
    contiguous.cpp
75
    concat.cpp
Khalique's avatar
Khalique committed
76
    leaky_relu.cpp
77
    batchnorm.cpp
Paul's avatar
Paul committed
78
    write_literals.cpp
79
    rocblas.cpp
Khalique's avatar
Khalique committed
80
81
    sigmoid.cpp
    abs.cpp
Khalique's avatar
Khalique committed
82
    elu.cpp
83
    pad.cpp
84
    gather.cpp
Shucai Xiao's avatar
Shucai Xiao committed
85
    convert.cpp
Khalique's avatar
Khalique committed
86
    lrn.cpp
Paul's avatar
Paul committed
87
    schedule_model.cpp
88
    adjust_allocation.cpp
89
    pack_int8_args.cpp
Khalique's avatar
Khalique committed
90
    clip.cpp
Paul's avatar
Paul committed
91
    reduce_sum.cpp
92
    reduce_mean.cpp
93
94
    int8_gemm_pack.cpp
    int8_conv_pack.cpp
Paul's avatar
Paul committed
95
)
Paul's avatar
Paul committed
96
97
98
99
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
100

Paul's avatar
Paul committed
101
rocm_install_targets(
Paul's avatar
Paul committed
102
  TARGETS migraphx_gpu migraphx_device
Paul's avatar
Paul committed
103
104
105
  INCLUDE
    ${CMAKE_CURRENT_SOURCE_DIR}/include
)
mei-ye's avatar
mei-ye committed
106