CMakeLists.txt 2.13 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
Khalique's avatar
Khalique committed
15
16
    device/max.cpp
    device/min.cpp
Shucai Xiao's avatar
Shucai Xiao committed
17
18
    device/exp.cpp
    device/log.cpp
19
    device/sin.cpp
Shucai Xiao's avatar
Shucai Xiao committed
20
21
    device/cos.cpp
    device/tan.cpp
22
23
    device/sinh.cpp
    device/cosh.cpp
24
25
26
    device/asin.cpp
    device/acos.cpp
    device/atan.cpp
Paul's avatar
Paul committed
27
    device/add_relu.cpp
28
    device/contiguous.cpp
29
    device/logsoftmax.cpp
Khalique's avatar
Khalique committed
30
    device/softmax.cpp
31
    device/convert.cpp
Khalique's avatar
Khalique committed
32
    device/mul.cpp
33
    device/concat.cpp
34
    device/pad.cpp
35
    device/gather.cpp
36
    device/sub.cpp
37
    device/pack.cpp
Khalique's avatar
Khalique committed
38
    device/clip.cpp
39
)
Paul's avatar
Paul committed
40
41
set_target_properties(migraphx_device PROPERTIES EXPORT_NAME device)
rocm_clang_tidy_check(migraphx_device)
Paul's avatar
Paul committed
42
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
43
44
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>)
45

Paul's avatar
Paul committed
46
add_library(migraphx_gpu
47
    eliminate_workspace.cpp
Paul's avatar
Paul committed
48
    fuse_ops.cpp
Paul's avatar
Paul committed
49
    hip.cpp
Paul's avatar
Paul committed
50
    target.cpp
Paul's avatar
Paul committed
51
    lowering.cpp
wsttiger's avatar
wsttiger committed
52
    gemm.cpp
53
    quant_gemm.cpp
wsttiger's avatar
wsttiger committed
54
55
    pooling.cpp
    convolution.cpp
56
    quant_convolution.cpp
57
    softmax.cpp
58
    logsoftmax.cpp
59
    contiguous.cpp
60
    concat.cpp
61
    relu.cpp
Khalique's avatar
Khalique committed
62
    leaky_relu.cpp
63
    tanh.cpp
64
    batchnorm.cpp
Paul's avatar
Paul committed
65
    write_literals.cpp
66
    rocblas.cpp
Khalique's avatar
Khalique committed
67
68
    sigmoid.cpp
    abs.cpp
Khalique's avatar
Khalique committed
69
    elu.cpp
70
    pad.cpp
71
    gather.cpp
Shucai Xiao's avatar
Shucai Xiao committed
72
    convert.cpp
Khalique's avatar
Khalique committed
73
    lrn.cpp
Paul's avatar
Paul committed
74
    schedule_model.cpp
75
    adjust_allocation.cpp
Khalique's avatar
Khalique committed
76
    clip.cpp
Paul's avatar
Paul committed
77
)
Paul's avatar
Paul committed
78
79
80
81
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
82

Paul's avatar
Paul committed
83
rocm_install_targets(
Paul's avatar
Paul committed
84
  TARGETS migraphx_gpu migraphx_device
Paul's avatar
Paul committed
85
86
87
  INCLUDE
    ${CMAKE_CURRENT_SOURCE_DIR}/include
)
mei-ye's avatar
mei-ye committed
88