Skip to content

Commit ce70c8b

Browse files
authored
Fast forward to the public MIOpen develop (#47)
1 parent feab6fd commit ce70c8b

File tree

332 files changed

+28685
-9161
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

332 files changed

+28685
-9161
lines changed

.readthedocs.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ sphinx:
99
formats: [htmlzip]
1010

1111
python:
12-
version: "3.8"
1312
install:
1413
- requirements: docs/.sphinx/requirements.txt
14+
15+
build:
16+
os: ubuntu-20.04
17+
tools:
18+
python: "3.8"

CMakeLists.txt

Lines changed: 21 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,10 @@ endif()
5252

5353
project ( MIOpen C CXX )
5454

55+
set(CMAKE_CXX_STANDARD 17)
56+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
57+
set(CMAKE_CXX_EXTENSIONS OFF)
58+
5559
enable_testing()
5660

5761
find_package(ROCM 0.7.3 REQUIRED PATHS /opt/rocm)
@@ -64,6 +68,9 @@ include(ROCMCreatePackage)
6468
include(CheckCXXCompilerFlag)
6569
include(ROCMHeaderWrapper)
6670

71+
# Build library with Beta APIs
72+
add_definitions("-DMIOPEN_BETA_API=1")
73+
6774
set(MIOPEN_ENABLE_AI_IMMED_MODE_FALLBACK On CACHE BOOL "Enable AI-based fallback for Immediate Mode")
6875
set(MIOPEN_ENABLE_AI_KERNEL_TUNING On CACHE BOOL "Enable AI heuristic for kernel tuning")
6976
set(MIOPEN_ENABLE_SQLITE On CACHE BOOL "")
@@ -103,11 +110,6 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
103110
endif()
104111
endif()
105112

106-
107-
############################################################
108-
# require C++14
109-
add_compile_options(-std=c++17)
110-
111113
############################################################
112114
# OPTION - MIOpen Backend
113115
# - OpenCL
@@ -173,7 +175,6 @@ set_property( CACHE MIOPEN_BACKEND PROPERTY STRINGS
173175
if( MIOPEN_BACKEND STREQUAL "OpenCL")
174176
set(MIOPEN_BACKEND_OPENCL 1)
175177
find_package( OpenCL REQUIRED )
176-
set(MIOPEN_USE_MIOPENGEMM ON CACHE BOOL "")
177178
find_program(MIOPEN_HIP_COMPILER clang++
178179
PATH_SUFFIXES bin
179180
PATHS
@@ -186,9 +187,6 @@ if( MIOPEN_BACKEND STREQUAL "OpenCL")
186187
message(FATAL_ERROR "hip compiler not found")
187188
endif()
188189

189-
# MIOpenTensile does not support opencl backend yet.
190-
set(MIOPEN_USE_MIOPENTENSILE OFF CACHE BOOL "")
191-
192190
# TODO (priority_low) Use to build HIP and ASM kernels.
193191
if(MIOPEN_USE_COMGR)
194192
message(FATAL_ERROR "comgr cannot be used with OpenCL backend")
@@ -253,6 +251,11 @@ math(EXPR MIOPEN_hip_VERSION_FLAT "(${MIOPEN_hip_VERSION_MAJOR} * 1000 + ${MIOPE
253251
set_var_to_condition(MIOPEN_USE_HIPRTC_DEFAULT ${MIOPEN_USE_COMGR} AND (${MIOPEN_hip_VERSION_FLAT} GREATER 500000000))
254252
option(MIOPEN_USE_HIPRTC "Use HIPRTC to build HIP kernels instead of COMGR" ${MIOPEN_USE_HIPRTC_DEFAULT})
255253

254+
# WORKAROUND_SWDEV_413293
255+
if(${MIOPEN_hip_VERSION_FLAT} GREATER_EQUAL 500723302)
256+
string(APPEND HIP_COMPILER_FLAGS " -fno-offload-uniform-block ")
257+
endif()
258+
256259
message(STATUS "Hip compiler flags: ${HIP_COMPILER_FLAGS}")
257260

258261
add_definitions("-DHIP_COMPILER_FLAGS=${HIP_COMPILER_FLAGS}")
@@ -267,9 +270,6 @@ if( MIOPEN_BACKEND STREQUAL "HIP" OR MIOPEN_BACKEND STREQUAL "HIPOC" OR MIOPEN_B
267270
set(MIOPEN_MODE_NOGPU 1)
268271
endif()
269272
set(MIOPEN_BACKEND_HIP 1)
270-
set(MIOPEN_USE_MIOPENGEMM OFF CACHE BOOL "")
271-
# miopentensile default off
272-
set(MIOPEN_USE_MIOPENTENSILE OFF CACHE BOOL "")
273273

274274
find_program(HIP_OC_COMPILER clang
275275
PATH_SUFFIXES bin
@@ -370,31 +370,6 @@ find_program(MIOPEN_AMDGCN_ASSEMBLER
370370
)
371371
message(STATUS "AMDGCN assembler: ${MIOPEN_AMDGCN_ASSEMBLER}")
372372

373-
# miopentensile
374-
if(MIOPEN_USE_MIOPENTENSILE)
375-
find_package(miopentensile)
376-
message(STATUS "Build with miopentensile")
377-
else()
378-
message(STATUS "Build without miopentensile")
379-
endif()
380-
381-
# miopengemm
382-
if(MIOPEN_USE_MIOPENGEMM)
383-
find_package(miopengemm PATHS /opt/rocm)
384-
if(NOT miopengemm_FOUND)
385-
set(MIOPEN_USE_MIOPENGEMM 0)
386-
endif()
387-
endif()
388-
389-
if(MIOPEN_USE_MIOPENGEMM)
390-
message(STATUS "Build with miopengemm")
391-
else()
392-
if(MIOPEN_BACKEND_OPENCL)
393-
message(FATAL_ERROR "MIOpen OpenCL backend requires MIOpenGEMM")
394-
endif()
395-
message(STATUS "Build without miopengemm")
396-
endif()
397-
398373
if(MIOPEN_USE_COMGR)
399374
find_package(amd_comgr REQUIRED CONFIG)
400375
message(STATUS "Build with comgr ${amd_comgr_VERSION}")
@@ -413,7 +388,7 @@ set(BOOST_COMPONENTS filesystem)
413388
add_definitions(-DBOOST_ALL_NO_LIB=1)
414389
find_package(Boost REQUIRED COMPONENTS ${BOOST_COMPONENTS})
415390

416-
find_path(HALF_INCLUDE_DIR half.hpp)
391+
find_path(HALF_INCLUDE_DIR half/half.hpp)
417392
message(STATUS "HALF_INCLUDE_DIR: ${HALF_INCLUDE_DIR}")
418393

419394
option( MIOPEN_DEBUG_FIND_DB_CACHING "Use system find-db caching" ON)
@@ -441,10 +416,6 @@ set(MIOPEN_SYSTEM_FIND_DB_SUFFIX "${MIOPEN_BACKEND}" CACHE PATH "Filename suffix
441416

442417
set(MIOPEN_PACKAGE_REQS "hip-rocclr")
443418

444-
if(MIOPEN_USE_MIOPENGEMM)
445-
set(MIOPEN_PACKAGE_REQS "${MIOPEN_PACKAGE_REQS}, miopengemm")
446-
endif()
447-
448419
if(MIOPEN_USE_ROCBLAS)
449420
set(MIOPEN_PACKAGE_REQS "${MIOPEN_PACKAGE_REQS}, rocblas")
450421
endif()
@@ -707,6 +678,14 @@ enable_clang_tidy(
707678
-cppcoreguidelines-avoid-const-or-ref-data-members
708679
-cppcoreguidelines-avoid-do-while
709680
-misc-use-anonymous-namespace
681+
###################################################################
682+
# TODO Code Quality WORKAROUND ROCm 5.7
683+
###################################################################
684+
-llvmlibc-inline-function-decl
685+
-cppcoreguidelines-avoid-capture-default-when-capturing-this
686+
-cppcoreguidelines-rvalue-reference-param-not-moved
687+
-readability-avoid-unconditional-preprocessor-if
688+
-bugprone-lambda-function-name
710689
${MIOPEN_TIDY_CHECKS}
711690
${MIOPEN_TIDY_ERRORS}
712691
HEADER_FILTER
@@ -795,7 +774,6 @@ enable_cppcheck(
795774
${CMAKE_CURRENT_SOURCE_DIR}/src/include
796775
DEFINE
797776
CPPCHECK=1
798-
MIOPEN_USE_MIOPENGEMM=1
799777
__linux__=1
800778
)
801779

Dockerfile

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-unauthenticated \
1818
ENV APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=DontWarn
1919
RUN curl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/trusted.gpg.d/rocm-keyring.gpg
2020

21-
RUN wget https://repo.radeon.com/amdgpu-install/5.6/ubuntu/focal/amdgpu-install_5.6.50600-1_all.deb --no-check-certificate
21+
RUN wget https://repo.radeon.com/amdgpu-install/5.7/ubuntu/focal/amdgpu-install_5.7.50700-1_all.deb --no-check-certificate
2222
RUN apt-get update && \
2323
DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-unauthenticated \
24-
./amdgpu-install_5.6.50600-1_all.deb
24+
./amdgpu-install_5.7.50700-1_all.deb
2525

2626
# Add rocm repository
27-
RUN export ROCM_APT_VER=5.6;\
27+
RUN export ROCM_APT_VER=5.7;\
2828
echo $ROCM_APT_VER &&\
2929
sh -c 'echo deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/rocm-keyring.gpg] https://repo.radeon.com/amdgpu/$ROCM_APT_VER/ubuntu focal main > /etc/apt/sources.list.d/amdgpu.list' &&\
3030
sh -c 'echo deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/rocm-keyring.gpg] https://repo.radeon.com/rocm/apt/$ROCM_APT_VER focal main > /etc/apt/sources.list.d/rocm.list'
@@ -106,6 +106,9 @@ RUN ccache -s
106106
ADD docs/.sphinx/requirements.txt /doc-requirements.txt
107107
RUN pip3 install -r /doc-requirements.txt
108108

109+
# Composable Kernel requires this version cmake
110+
RUN pip3 install --upgrade cmake==3.27.5
111+
109112
# Use parallel job to accelerate tensile build
110113
# Workaround for Tensile with TargetID feature
111114
ARG USE_TARGETID="OFF"

0 commit comments

Comments
 (0)