CMakeLists.txt 2.53 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
28
29
    device/asin.cpp
    device/acos.cpp
    device/atan.cpp
Paul's avatar
Paul committed
30
    device/add_relu.cpp
31
    device/contiguous.cpp
32
    device/logsoftmax.cpp
Khalique's avatar
Khalique committed
33
    device/softmax.cpp
34
    device/convert.cpp
Khalique's avatar
Khalique committed
35
    device/mul.cpp
36
    device/concat.cpp
37
    device/pad.cpp
38
    device/gather.cpp
39
    device/sub.cpp
40
    device/int8_gemm_pack.cpp
41
    device/div.cpp
Khalique's avatar
Khalique committed
42
    device/clip.cpp
Paul's avatar
Paul committed
43
    device/reduce_sum.cpp
Khalique's avatar
Khalique committed
44
    device/rsqrt.cpp
45
    device/round.cpp
46
    device/sqrt.cpp
47
    device/reduce_mean.cpp
Shucai Xiao's avatar
Shucai Xiao committed
48
    device/pow.cpp
Khalique's avatar
Khalique committed
49
    device/sqdiff.cpp
Shucai Xiao's avatar
Shucai Xiao committed
50
    device/sign.cpp
51
)
Paul's avatar
Paul committed
52
53
set_target_properties(migraphx_device PROPERTIES EXPORT_NAME device)
rocm_clang_tidy_check(migraphx_device)
Paul's avatar
Paul committed
54
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
55
56
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>)
57

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

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