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

Paul's avatar
Paul committed
61
add_library(migraphx_gpu
Shucai Xiao's avatar
Shucai Xiao committed
62
63
    argmax.cpp
    argmin.cpp
64
    eliminate_workspace.cpp
Paul's avatar
Paul committed
65
    fuse_ops.cpp
Paul's avatar
Paul committed
66
    hip.cpp
Paul's avatar
Paul committed
67
    target.cpp
Paul's avatar
Paul committed
68
    lowering.cpp
wsttiger's avatar
wsttiger committed
69
    gemm.cpp
70
    quant_gemm.cpp
wsttiger's avatar
wsttiger committed
71
72
    pooling.cpp
    convolution.cpp
73
    quant_convolution.cpp
74
    softmax.cpp
75
    logsoftmax.cpp
76
    contiguous.cpp
77
    concat.cpp
Khalique's avatar
Khalique committed
78
    leaky_relu.cpp
79
    batchnorm.cpp
Paul's avatar
Paul committed
80
    write_literals.cpp
81
    rocblas.cpp
Khalique's avatar
Khalique committed
82
    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