CMakeLists.txt 1.89 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
17
    device/sin.cpp
Shucai Xiao's avatar
Shucai Xiao committed
18
19
    device/cos.cpp
    device/tan.cpp
20
21
    device/sinh.cpp
    device/cosh.cpp
22
23
24
    device/asin.cpp
    device/acos.cpp
    device/atan.cpp
Paul's avatar
Paul committed
25
    device/add_relu.cpp
26
    device/contiguous.cpp
Khalique's avatar
Khalique committed
27
    device/mul.cpp
28
    device/concat.cpp
29
)
Paul's avatar
Paul committed
30
31
set_target_properties(migraphx_device PROPERTIES EXPORT_NAME device)
rocm_clang_tidy_check(migraphx_device)
Paul's avatar
Paul committed
32
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
33
34
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>)
35

Paul's avatar
Paul committed
36
add_library(migraphx_gpu
37
    eliminate_workspace.cpp
Paul's avatar
Paul committed
38
    fuse_ops.cpp
Paul's avatar
Paul committed
39
    hip.cpp
Paul's avatar
Paul committed
40
    target.cpp
Paul's avatar
Paul committed
41
    lowering.cpp
wsttiger's avatar
wsttiger committed
42
43
44
    gemm.cpp
    pooling.cpp
    convolution.cpp
45
46
    softmax.cpp
    contiguous.cpp
47
    concat.cpp
48
    relu.cpp
Khalique's avatar
Khalique committed
49
    leaky_relu.cpp
50
    add.cpp
51
    sin.cpp
Khalique's avatar
Khalique committed
52
53
    max.cpp
    min.cpp
Shucai Xiao's avatar
Shucai Xiao committed
54
55
    cos.cpp
    tan.cpp
56
57
    sinh.cpp
    cosh.cpp
58
    tanh.cpp
59
60
61
    asin.cpp
    acos.cpp
    atan.cpp
Khalique's avatar
Khalique committed
62
    mul.cpp
63
    batchnorm.cpp
Paul's avatar
Paul committed
64
    write_literals.cpp
65
    rocblas.cpp
Khalique's avatar
Khalique committed
66
67
    sigmoid.cpp
    abs.cpp
Khalique's avatar
Khalique committed
68
    elu.cpp
Paul's avatar
Paul committed
69
)
Paul's avatar
Paul committed
70
71
72
73
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
74

Paul's avatar
Paul committed
75
rocm_install_targets(
Paul's avatar
Paul committed
76
  TARGETS migraphx_gpu migraphx_device
Paul's avatar
Paul committed
77
78
79
  INCLUDE
    ${CMAKE_CURRENT_SOURCE_DIR}/include
)
mei-ye's avatar
mei-ye committed
80