Skip to content

Commit

Permalink
miopen: Update to v3.2.0 (ROCm v6.2.4)
Browse files Browse the repository at this point in the history
Signed-off-by: Gavin Zhao <[email protected]>
  • Loading branch information
GZGavinZhao committed Dec 5, 2024
1 parent 668709c commit 1fa4321
Show file tree
Hide file tree
Showing 7 changed files with 2,337 additions and 1,144 deletions.
3,084 changes: 2,097 additions & 987 deletions packages/m/miopen/abi_symbols

Large diffs are not rendered by default.

5 changes: 4 additions & 1 deletion packages/m/miopen/abi_used_libs
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
UNKNOWN
ld-linux-x86-64.so.2
libamd_comgr.so.2
libamdhip64.so.6
libboost_filesystem.so.1.83.0
libbz2.so.1.0
libc.so.6
libck_device_conv_operations.so.1
libck_device_other_operations.so.1
libgcc_s.so.1
libhiprtc.so.6
libm.so.6
librocblas.so.4
librocrand.so.1
libroctx64.so.4
libsqlite3.so.0
libstdc++.so.6
211 changes: 169 additions & 42 deletions packages/m/miopen/abi_used_symbols

Large diffs are not rendered by default.

34 changes: 13 additions & 21 deletions packages/m/miopen/files/0001-Extend-MIOpen-ISA-compatibility.patch
Original file line number Diff line number Diff line change
@@ -1,34 +1,24 @@
From 416088b534618bd669a765afce59cfc7197064c1 Mon Sep 17 00:00:00 2001
From d9820e8bf1d942744a25295bc7425b7dffe1e1d8 Mon Sep 17 00:00:00 2001
From: Gavin Zhao <[email protected]>
Date: Tue, 20 Feb 2024 14:40:21 -0500
Date: Thu, 5 Dec 2024 00:25:42 -0500
Subject: [PATCH] Extend MIOpen ISA compatibility

Signed-off-by: Gavin Zhao <[email protected]>
---
src/hip/handlehip.cpp | 27 +++++++++++++++++++++++++--
1 file changed, 25 insertions(+), 2 deletions(-)
src/hip/handlehip.cpp | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/src/hip/handlehip.cpp b/src/hip/handlehip.cpp
index ff6d27d..b352896 100644
index cf4e4eccb..e70039c0f 100644
--- a/src/hip/handlehip.cpp
+++ b/src/hip/handlehip.cpp
@@ -57,6 +57,7 @@
#include <thread>
#include <mutex>
#include <shared_mutex>
+#include <string>

#define MIOPEN_WORKAROUND_ROCM_COMPILER_SUPPORT_ISSUE_30 \
(MIOPEN_USE_COMGR && BUILD_SHARED_LIBS && (HIP_PACKAGE_VERSION_FLAT < 4003000000ULL))
@@ -228,9 +229,31 @@ struct HandleImpl
@@ -218,8 +218,32 @@ struct HandleImpl
{
hipDeviceProp_t props{};
hipGetDeviceProperties(&props, device);
#if ROCM_FEATURE_HIP_GCNARCHNAME_RETURNS_CODENAME
- const std::string name("gfx" + std::to_string(props.gcnArch));
+ std::string name("gfx" + std::to_string(props.gcnArch));
#else
- const std::string name(props.gcnArchName);
+ std::string name(props.gcnArchName);
MIOPEN_LOG_NQI("Raw device name: " << name);
+
+ // coerce device name
+ size_t loc = std::string::npos;
Expand All @@ -51,9 +41,11 @@ index ff6d27d..b352896 100644
+ name.at(loc + offset) = '0';
+ }
+ }
#endif
MIOPEN_LOG_NQI("Raw device name: " << name);
+
+ MIOPEN_LOG_NQI("Coerced device name: " << name);
return name; // NOLINT (performance-no-automatic-move)
}

--
2.43.1
2.47.0

39 changes: 0 additions & 39 deletions packages/m/miopen/files/Use-split-CK-libraries.patch

This file was deleted.

72 changes: 29 additions & 43 deletions packages/m/miopen/package.yml
Original file line number Diff line number Diff line change
@@ -1,78 +1,62 @@
name : miopen

Check warning on line 1 in packages/m/miopen/package.yml

View workflow job for this annotation

GitHub Actions / Checks

`monitoring.yml` is missing
version : 3.00.0
release : 5
version : 3.2.0
release : 6
source :
# tag: rocm-6.0.0
# - git|https://github.com/ROCm/MIOpen.git : f34a90f7699e4af0e021ff0bf4111b1c407bdec1
- https://github.com/ROCm/MIOpen/archive/refs/tags/rocm-6.0.0.tar.gz : a0718a48353be30ff98118ade511f0c1b454e394d8f934aefe7dd6946562b2e9
- https://github.com/ROCm/MIOpen/raw/f34a90f7699e4af0e021ff0bf4111b1c407bdec1/src/kernels/gfx90a.kdb.bz2 : d22333c785c9081f293e56bc3f5baccc5410d578d2be1dc5e5d523d02de8b5ed
- https://github.com/ROCm/MIOpen/raw/f34a90f7699e4af0e021ff0bf4111b1c407bdec1/src/kernels/gfx900.kdb.bz2 : 945141e464054e3527c77243c7cd7ac87fbde8e191b7d5ef0737cb1451ed52b1
- https://github.com/ROCm/MIOpen/raw/f34a90f7699e4af0e021ff0bf4111b1c407bdec1/src/kernels/gfx906.kdb.bz2 : 727d4e0cb714422fbf40952559b10bba43148f8f9bd6f8e3461853b1e2fdb5d3
- https://github.com/ROCm/MIOpen/raw/f34a90f7699e4af0e021ff0bf4111b1c407bdec1/src/kernels/gfx908.kdb.bz2 : 7f5b1925fbd2f58ab7011913867fcd59222e3cc09dee040f08acb6e7e22e0fda
- https://github.com/ROCm/MIOpen/raw/f34a90f7699e4af0e021ff0bf4111b1c407bdec1/src/kernels/gfx1030.kdb.bz2 : 2c4484c69eec165ee8b0233b1dd54ca73384d1d53bf79ddedb2ce078748681f2
# tag: rocm-6.2.4
- git|https://github.com/ROCm/MIOpen.git : ba89256497cc8e98eff8fa957116d0ca7611aec5
homepage : https://github.com/ROCmSoftwarePlatform/MIOpen
license : MIT
component : programming.library
summary : AMD's Machine Intelligence Library
description: |
MIOpen is AMD's library for high performance machine learning primitives.
# clang : yes
networking : yes
builddeps :
- pkgconfig(bzip2)
- pkgconfig(eigen3)
- pkgconfig(nlohmann_json)
- pkgconfig(sqlite3)
- pkgconfig(libzstd)
# 你大爷的 this thing never checks out the files
# - git-lfs
- half
- frugally-deep
- composable-kernel-devel
- libboost-devel
- composable-kernel
- rocblas-devel
- roctracer-devel
- rocrand-devel
- git-lfs
- half
- frugally-deep
- rocm-cmake
- rocm-hip
- rocmlir
- roctracer-devel
# Deprecated by upstream
# - miopengemm-devel
debug : no
environment: |
unset CFLAGS CXXFLAGS LDFLAGS
export CXXFLAGS="${CXXFLAGS/-D_FORTIFY_SOURCE=2 -fstack-protector-strong --param=ssp-buffer-size=32/-fcf-protection=none}"
# Too noisy
export CFLAGS="-w"
export CXXFLAGS="-w"
export CXXFLAGS+=" -w"
export CLANG_IGNORE_WERROR=1
export ROCM_PATH=/usr
export HIP_CLANG_PATH=/usr/lib64/llvm-rocm/bin
export DEVICE_LIB_PATH=/usr/lib64/amdgcn/bitcode
export HIP_DEVICE_LIB_PATH=/usr/lib64/amdgcn/bitcode
export DEVICE_LIB_PATH=$HIP_DEVICE_LIB_PATH
export CMAKE_PREFIX_PATH=/usr/lib64/llvm-rocm
export CMAKE_MODULE_PATH=/usr/lib64/llvm-rocm/lib64/cmake/llvm
export HIP_CLANG_LAUNCHER=sccache
export SCCACHE_IDLE_TIMEOUT=0
export CMAKE_C_COMPILER_LAUNCHER=sccache
export CMAKE_CXX_COMPILER_LAUNCHER=sccache
# export HIP_CLANG_LAUNCHER=sccache
# export SCCACHE_IDLE_TIMEOUT=0
# export CMAKE_C_COMPILER_LAUNCHER=sccache
# export CMAKE_CXX_COMPILER_LAUNCHER=sccache
export OFFLOAD_BUNDLER_COMPRESS=1
setup : |
# Git LFS JUST DOESN'T WORK!!!!
# git lfs fetch origin rocm-6.0.0 --all
# git-lfs checkout
# for arch in gfx90a gfx900 gfx906 gfx908 gfx1030; do
# curl -o src/kernels/$arch.kdb.bz2 -L https://github.com/ROCm/MIOpen/raw/f34a90f7699e4af0e021ff0bf4111b1c407bdec1/src/kernels/$arch.kdb.bz2
# done
cp $sources/*.kdb.bz2 src/kernels/
sed -i "s|enable_testing()||" CMakeLists.txt
sed -i "s|add_subdirectory(doc)||" CMakeLists.txt
sed -i "s|add_subdirectory(test)||" CMakeLists.txt
sed -i "s|add_subdirectory(speedtests)||" CMakeLists.txt
sed -i 's|/opt/rocm/llvm|/usr/lib64/llvm-rocm|g' CMakeLists.txt
sed -i 's|/opt/rocm|/usr|g' CMakeLists.txt
sed -i 's|/usr/local/opt/llvm|/usr/lib64/llvm-rocm|' cmake/ClangTidy.cmake
# Otherwise git LFS doesn't pull anything donw
git rm .lfsconfig
git config --local user.name "Packager"
git config --local user.email "[email protected]"
git commit -m "Remove .lfsconfig"
git lfs install
git lfs fetch
git lfs checkout
%patch -p1 -i $pkgfiles/remove-clang-tidy-checks.diff
%patch -p1 -i $pkgfiles/0001-Extend-MIOpen-ISA-compatibility.patch
%cmake_ninja -L \
Expand All @@ -82,6 +66,7 @@ setup : |
-DCMAKE_INSTALL_LIBDIR=lib%LIBSUFFIX% \
-DROCM_SYMLINK_LIBS=OFF \
-DBoost_USE_STATIC_LIBS=OFF \
-DBUILD_TESTING=OFF \
-DMIOPEN_TEST_ALL=OFF \
-DMIOPEN_USE_COMGR=ON \
-DMIOPEN_BACKEND=HIP \
Expand All @@ -97,3 +82,4 @@ build : |
%ninja_build
install : |
%ninja_install
rm $installdir/usr/bin/install_precompiled_kernels.sh
36 changes: 25 additions & 11 deletions packages/m/miopen/pspec_x86_64.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,43 +21,57 @@
<PartOf>programming.library</PartOf>
<Files>
<Path fileType="executable">/usr/bin/MIOpenDriver</Path>
<Path fileType="executable">/usr/bin/install_precompiled_kernels.sh</Path>
<Path fileType="library">/usr/lib64/libMIOpen.so.1</Path>
<Path fileType="library">/usr/lib64/libMIOpen.so.1.0</Path>
<Path fileType="doc">/usr/share/doc/miopen-hip/LICENSE.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx1030.kdb</Path>
<Path fileType="data">/usr/share/miopen/db/gfx1030_36.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx1030_36.db</Path>
<Path fileType="data">/usr/share/miopen/db/gfx1030_36.db.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx803_36.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx803_36.OpenCL.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx803_64.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx803_64.OpenCL.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx900.kdb</Path>
<Path fileType="data">/usr/share/miopen/db/gfx900_56.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx900_56.OpenCL.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx900_56.db</Path>
<Path fileType="data">/usr/share/miopen/db/gfx900_56.db.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx900_64.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx900_64.OpenCL.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx906.kdb</Path>
<Path fileType="data">/usr/share/miopen/db/gfx906_60.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx906_60.OpenCL.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx906_60.db</Path>
<Path fileType="data">/usr/share/miopen/db/gfx906_60.db.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx906_64.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx906_64.OpenCL.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx908.kdb</Path>
<Path fileType="data">/usr/share/miopen/db/gfx908.tn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90878.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90878.OpenCL.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90878.db</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90878.db.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx908_ConvAsm1x1U_decoder.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx908_ConvAsm1x1U_encoder.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx908_ConvAsm1x1U_metadata.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx908_metadata.tn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a.kdb</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a.tn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a68.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a68.db</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a68.db.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a6e.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a6e.db</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a6e.db.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a_ConvHipIgemmGroupFwdXdlops_decoder.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a_ConvHipIgemmGroupFwdXdlops_encoder.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a_ConvHipIgemmGroupFwdXdlops_metadata.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a_ConvHipIgemmGroupXdlops_decoder.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a_ConvHipIgemmGroupXdlops_encoder.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a_ConvHipIgemmGroupXdlops_metadata.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx90a_metadata.tn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx942.tn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx942130.HIP.fdb.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx942130.db.txt</Path>
<Path fileType="data">/usr/share/miopen/db/gfx942_ConvHipIgemmGroupXdlops_decoder.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx942_ConvHipIgemmGroupXdlops_encoder.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx942_ConvHipIgemmGroupXdlops_metadata.ktn.model</Path>
<Path fileType="data">/usr/share/miopen/db/gfx942_metadata.tn.model</Path>
</Files>
</Package>
<Package>
Expand All @@ -67,7 +81,7 @@
</Description>
<PartOf>programming.devel</PartOf>
<RuntimeDependencies>
<Dependency release="5">miopen</Dependency>
<Dependency release="6">miopen</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include/miopen/config.h</Path>
Expand All @@ -82,9 +96,9 @@
</Files>
</Package>
<History>
<Update release="5">
<Date>2024-02-20</Date>
<Version>3.00.0</Version>
<Update release="6">
<Date>2024-12-05</Date>
<Version>3.2.0</Version>
<Comment>Packaging update</Comment>
<Name>Gavin Zhao</Name>
<Email>[email protected]</Email>
Expand Down

0 comments on commit 1fa4321

Please sign in to comment.