Skip to content

Commit

Permalink
Bump CK commit hash for staging and update CI docker (#2777)
Browse files Browse the repository at this point in the history
  • Loading branch information
junliume authored Mar 12, 2024
1 parent 9050abc commit eae8685
Show file tree
Hide file tree
Showing 14 changed files with 55 additions and 41 deletions.
14 changes: 14 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,14 @@
# -llvmlibc-inline-function-decl
# -readability-avoid-unconditional-preprocessor-if
#
# TODO Code Quality WORKAROUND ROCm 6.1
# -cppcoreguidelines-misleading-capture-default-by-value
# -cppcoreguidelines-missing-std-forward
# -cppcoreguidelines-use-default-member-init
# -misc-include-cleaner
# -modernize-type-traits
# -performance-avoid-endl
#
Checks: >-
*,
-abseil-*,
Expand Down Expand Up @@ -93,6 +101,8 @@ Checks: >-
-cppcoreguidelines-explicit-virtual-functions,
-cppcoreguidelines-init-variables,
-cppcoreguidelines-macro-usage,
-cppcoreguidelines-misleading-capture-default-by-value,
-cppcoreguidelines-missing-std-forward,
-cppcoreguidelines-narrowing-conversions,
-cppcoreguidelines-non-private-member-variables-in-classes,
-cppcoreguidelines-prefer-member-initializer,
Expand All @@ -105,6 +115,7 @@ Checks: >-
-cppcoreguidelines-pro-type-vararg,
-cppcoreguidelines-rvalue-reference-param-not-moved,
-cppcoreguidelines-special-member-functions,
-cppcoreguidelines-use-default-member-init,
-fuchsia-*,
-google-explicit-constructor,
-google-readability-casting,
Expand Down Expand Up @@ -136,6 +147,7 @@ Checks: >-
-llvm-qualified-auto,
-misc-confusable-identifiers,
-misc-const-correctness,
-misc-include-cleaner,
-misc-misplaced-const,
-misc-non-private-member-variables-in-classes,
-misc-no-recursion,
Expand All @@ -145,6 +157,7 @@ Checks: >-
-modernize-deprecated-headers,
-modernize-macro-to-enum,
-modernize-pass-by-value,
-modernize-type-traits,
-modernize-use-auto,
-modernize-use-default-member-init,
-modernize-use-emplace,
Expand All @@ -154,6 +167,7 @@ Checks: >-
-modernize-use-nodiscard,
-modernize-concat-nested-namespaces,
-modernize-unary-static-assert,
-performance-avoid-endl,
-performance-no-automatic-move,
-performance-unnecessary-copy-initialization,
-performance-unnecessary-value-param,
Expand Down
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[submodule "fin"]
path = fin
url = https://github.com/ROCmSoftwarePlatform/MIFin.git
url = https://github.com/ROCm/MIFin.git
branch = develop
36 changes: 18 additions & 18 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,28 +160,28 @@ INI8x4 support and fix minor issues and bugs.
- typo in components dependency variable in CMakeLists.txt
- issues with COMgr backed online compilation for HIP kernels
### Known issues
- This release may show warnings for "obsolete configs" in the performance database. This can be fixed by rerunning tuning on a specfic network; [see tuning documentation](https://rocmsoftwareplatform.github.io/MIOpen/doc/html/perfdatabase.html#miopen-find-enforce)
- This release may show warnings for "obsolete configs" in the performance database. This can be fixed by rerunning tuning on a specfic network; [see tuning documentation](https://ROCm.github.io/MIOpen/doc/html/perfdatabase.html#miopen-find-enforce)

## MIOpen 2.7.0 for ROCm 3.8.0
- This release contains a new reduction API; see [API documentation](https://rocmsoftwareplatform.github.io/MIOpen/doc/html/apireference.html) for more information. Additional features for embedded builds have been added, and further support for 3D convolutional networks.
- This release contains a new reduction API; see [API documentation](https://ROCm.github.io/MIOpen/doc/html/apireference.html) for more information. Additional features for embedded builds have been added, and further support for 3D convolutional networks.
### Added
- additional tunings into performance database
- general reduction API
- cmake flag for embedding binary database into a static MIOpen build
- cmake flag for embedding system find-db text files into static MIOpen build
### Fixed
- issue with GEMM workspace size calculation for backwards data convolutions [#381](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/381)
- issue with 3D pooling indexing [#365](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/365)
- issue with GEMM workspace size calculation for backwards data convolutions [#381](https://github.com/ROCm/MIOpen/issues/381)
- issue with 3D pooling indexing [#365](https://github.com/ROCm/MIOpen/issues/365)

## MIOpen 2.6.0 for ROCm 3.7.0
### Notes
- This release contains convolution performance improvements, improved multi-threading behavior, and improved stability for half precision convolutions. Initial iteration time has been reduced with the introduction of hybrid find mode. Builds for a static library have been refined for this release.
### Added
- MIOPEN_FIND_MODE=3 as the new default convolution Find mode; see documentation [here](https://rocmsoftwareplatform.github.io/MIOpen/doc/html/find_and_immediate.html#find-modes) for details
- MIOPEN_FIND_MODE=3 as the new default convolution Find mode; see documentation [here](https://ROCm.github.io/MIOpen/doc/html/find_and_immediate.html#find-modes) for details
- a more runtime-parameterized version of pooling to reduce the number of online compilations
- Improved the performance of backwards spatial batch normalization for small images
### Fixed
- issue with std::logic_error in SQLite deleter [#306](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/306)
- issue with std::logic_error in SQLite deleter [#306](https://github.com/ROCm/MIOpen/issues/306)
- issues with half precision stability for convolutions
- issues with multi-threaded SQLite database accesses
- issues with 3-D convolutions and incorrect parameters
Expand Down Expand Up @@ -213,7 +213,7 @@ INI8x4 support and fix minor issues and bugs.
- Improved performance for implicitGEMM and Winograd algorithms
- Improved database locking
### Fixed
- issue with GPU memory segmentation fault on asymmetric padding [#142](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/142)
- issue with GPU memory segmentation fault on asymmetric padding [#142](https://github.com/ROCm/MIOpen/issues/142)

## MIOpen 2.3.0 for ROCm 3.1.0
### Notes
Expand All @@ -225,7 +225,7 @@ INI8x4 support and fix minor issues and bugs.
- full CO v3 support for all kernels in MIOpen
- new Winograd group convolution kernels
- an API to query MIOpen's version
- parallel compilation in initial convolutional algorithm search; partial solution to [#130](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/130)
- parallel compilation in initial convolutional algorithm search; partial solution to [#130](https://github.com/ROCm/MIOpen/issues/130)
- SQLite binary program cache
- Improved logging across all layers
- Improved MIOpen's internal design for calling convolutional solvers
Expand All @@ -239,7 +239,7 @@ INI8x4 support and fix minor issues and bugs.
- support for multiple ROCm installations
- additional support for code object v3
### Fixed
- issue with incorrect LRN calculation [#127](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/127)
- issue with incorrect LRN calculation [#127](https://github.com/ROCm/MIOpen/issues/127)
- incorrect performance database documentation
- issue with incorrect workspace calculation in group convolutions
- issue with unsupported hardware instructions used with inline assembly
Expand All @@ -248,7 +248,7 @@ INI8x4 support and fix minor issues and bugs.
### Notes
- This release contains bug fixes, performance improvements, and expanded applicability for specific convolutional algorithms.
- MIOpen has posted a citable paper on ArXiv [here](https://arxiv.org/abs/1910.00078).
- An SQLite database has been added to replace the text-based performance database. While the text file still exists, by default SQLite is used over the text-based performance database; see [documentation](https://rocmsoftwareplatform.github.io/MIOpen/doc/html/perfdatabase.html) from more details.
- An SQLite database has been added to replace the text-based performance database. While the text file still exists, by default SQLite is used over the text-based performance database; see [documentation](https://ROCm.github.io/MIOpen/doc/html/perfdatabase.html) from more details.
### Added
- per solution algorithm filtering environmental variable for debugging
- SQLite3 database and build dependency. The text-based performance database support is deprecated and will be removed in the next release.
Expand Down Expand Up @@ -279,7 +279,7 @@ INI8x4 support and fix minor issues and bugs.
- Improved performance of convolutions layers
### Fixed
- issue with NaN appearing on batch normalization backwards pass in fp16
- softmax kernel bug in log mode [#112](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/112)
- softmax kernel bug in log mode [#112](https://github.com/ROCm/MIOpen/issues/112)
- ROCm gfx803 support issue [#869](https://github.com/RadeonOpenCompute/ROCm/issues/869)
### Removed
- MIOpenGEMM as a requirement for the HIP backend. It is now optional.
Expand Down Expand Up @@ -323,17 +323,17 @@ INI8x4 support and fix minor issues and bugs.
- a shipped System Find-Db containing offline run Find() results
- an additional, faster batch norm assembly kernel for fp16
- CTC loss layer
- MIOpenDriver as a default component in MIOpen's build [#34](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/34)
- MIOpenDriver as a default component in MIOpen's build [#34](https://github.com/ROCm/MIOpen/issues/34)
- Improved performance of 1x1 stride 2 fp32 convolutions in the forward and backwards data passes
- Improved 3-D convolution stability
- Improved applicability of direct convolution backwards weights for 2x2, 5x10, and 5x20 filter sizes
- Improved maintainability in kernels and cpp code
### Changed
- Updated rocBLAS minimum version to branch [master-rocm-2.6](https://github.com/ROCmSoftwarePlatform/rocBLAS/tree/master-rocm-2.6)
- Updated rocBLAS minimum version to branch [master-rocm-2.6](https://github.com/ROCm/rocBLAS/tree/master-rocm-2.6)
### Fixed
- C compatability for boolean types in C API [#103](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/103)
- incorrect calculation in per-activation batch norm backwards pass [#104](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/104)
- bug [#95](https://github.com/ROCmSoftwarePlatform/MIOpen/issues/95) with asm batch norm ISA
- C compatability for boolean types in C API [#103](https://github.com/ROCm/MIOpen/issues/103)
- incorrect calculation in per-activation batch norm backwards pass [#104](https://github.com/ROCm/MIOpen/issues/104)
- bug [#95](https://github.com/ROCm/MIOpen/issues/95) with asm batch norm ISA
- IsApplicable bug in Conv3x3Asm for group convolutions

## MIOpen 1.8.1 for ROCm 2.5.0
Expand Down Expand Up @@ -476,7 +476,7 @@ INI8x4 support and fix minor issues and bugs.
### Known issues
- RNNs do not support fp16
- Training with CNNs does not support fp16
- Users may encounter a warning that their performance database is out of date. The performance database can be updated by setting the environment variable for just the initial run of an application: `MIOPEN_FIND_ENFORCE=search`. For more information on the performance database, see: https://rocmsoftwareplatform.github.io/MIOpen/doc/html/perfdatabase.html#
- Users may encounter a warning that their performance database is out of date. The performance database can be updated by setting the environment variable for just the initial run of an application: `MIOPEN_FIND_ENFORCE=search`. For more information on the performance database, see: https://ROCm.github.io/MIOpen/doc/html/perfdatabase.html#

## MIOpen 1.4.1 for ROCm 1.0.0
### Added:
Expand All @@ -485,7 +485,7 @@ INI8x4 support and fix minor issues and bugs.
### Known issues
- RNNs do not support fp16
- Training with CNNs does not support fp16
- Users may encounter a warning that their performance database is out of date. The performance database can be updated by setting the environment variable for just the initial run of an application: `MIOPEN_FIND_ENFORCE=search`. For more information on the performance database, see: https://rocmsoftwareplatform.github.io/MIOpen/doc/html/perfdatabase.html#
- Users may encounter a warning that their performance database is out of date. The performance database can be updated by setting the environment variable for just the initial run of an application: `MIOPEN_FIND_ENFORCE=search`. For more information on the performance database, see: https://ROCm.github.io/MIOpen/doc/html/perfdatabase.html#

## MIOpen 1.4.0 for ROCm 1.0.0
### Notes:
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,7 @@ if( MIOPEN_BACKEND STREQUAL "HIP" OR MIOPEN_BACKEND STREQUAL "HIPOC" OR MIOPEN_B
endif()
set(MIOPEN_BACKEND_HIP 1)

find_program(HIP_OC_COMPILER clang
find_program(HIP_OC_COMPILER amdclang
PATH_SUFFIXES bin
PATHS
/opt/rocm
Expand Down
12 changes: 6 additions & 6 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,16 @@ DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-unauthenticated \
ENV APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=DontWarn
RUN curl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/trusted.gpg.d/rocm-keyring.gpg

RUN wget https://repo.radeon.com/amdgpu-install/6.0.2/ubuntu/jammy/amdgpu-install_6.0.60002-1_all.deb --no-check-certificate
RUN wget https://repo.radeon.com/amdgpu-install/.6.1/ubuntu/jammy/amdgpu-install_6.1.60100-1_all.deb --no-check-certificate
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-unauthenticated \
./amdgpu-install_6.0.60002-1_all.deb
./amdgpu-install_6.1.60100-1_all.deb

# Add rocm repository
RUN export ROCM_APT_VER=6.0.2;\
RUN export ROCM_APT_VER=6.1;\
echo $ROCM_APT_VER &&\
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 jammy main > /etc/apt/sources.list.d/amdgpu.list' &&\
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 jammy main > /etc/apt/sources.list.d/rocm.list'
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 jammy main > /etc/apt/sources.list.d/amdgpu.list' &&\
sh -c 'echo deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/rocm-keyring.gpg] https://repo.radeon.com/rocm/apt/.apt_$ROCM_APT_VER jammy main > /etc/apt/sources.list.d/rocm.list'
RUN sh -c "echo deb http://mirrors.kernel.org/ubuntu jammy main universe | tee -a /etc/apt/sources.list"

RUN amdgpu-install -y --usecase=rocm --no-dkms
Expand All @@ -49,8 +49,8 @@ DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-unauthenticated \
python3-dev \
python3-pip \
python3-venv \
rocblas \
rocm-developer-tools \
rocm-llvm-dev \
rpm \
software-properties-common && \
apt-get clean && \
Expand Down
2 changes: 1 addition & 1 deletion Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ def buildHipClangJob(Map conf=[:]){
def lfs_pull = conf.get("lfs_pull", false)

def retimage
gitStatusWrapper(credentialsId: "${env.status_wrapper_creds}", gitHubContext: "Jenkins - ${variant}", account: 'ROCmSoftwarePlatform', repo: 'MIOpen') {
gitStatusWrapper(credentialsId: "${env.status_wrapper_creds}", gitHubContext: "Jenkins - ${variant}", account: 'ROCm', repo: 'MIOpen') {
try {
(retimage, image) = getDockerImage(conf)
if (needs_gpu) {
Expand Down
2 changes: 1 addition & 1 deletion dev-requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ROCmSoftwarePlatform/rocm-recipes@329203d79f9fe77ae5d0d742af0966bc57f4dfc8
ROCm/rocm-recipes@329203d79f9fe77ae5d0d742af0966bc57f4dfc8
-f requirements.txt
danmar/[email protected]
google/[email protected]
2 changes: 1 addition & 1 deletion fin
2 changes: 1 addition & 1 deletion install_deps.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -113,5 +113,5 @@ cget(init ${TOOLCHAIN_FLAG} -DCMAKE_INSTALL_RPATH=${PREFIX}/lib ${PARSE_UNPARSED
cget(ignore pcre)

# Install dependencies
cget(install -U ROCmSoftwarePlatform/rocm-recipes@329203d79f9fe77ae5d0d742af0966bc57f4dfc8)
cget(install -U ROCm/rocm-recipes@329203d79f9fe77ae5d0d742af0966bc57f4dfc8)
cget(install -U -f requirements.txt)
4 changes: 2 additions & 2 deletions rbuild.ini
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ cxx = ${rocm_path}/llvm/bin/clang++
cc = ${rocm_path}/llvm/bin/clang
ignore = pcre
deps =
ROCmSoftwarePlatform/rocm-recipes@329203d79f9fe77ae5d0d742af0966bc57f4dfc8
ROCm/rocm-recipes@329203d79f9fe77ae5d0d742af0966bc57f4dfc8
-f requirements.txt

[develop]
Expand All @@ -20,5 +20,5 @@ cxx = ${rocm_path}/llvm/bin/clang++
cc = ${rocm_path}/llvm/bin/clang
ignore = pcre
deps =
ROCmSoftwarePlatform/rocm-recipes@329203d79f9fe77ae5d0d742af0966bc57f4dfc8
ROCm/rocm-recipes@329203d79f9fe77ae5d0d742af0966bc57f4dfc8
-f dev-requirements.txt
12 changes: 6 additions & 6 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
sqlite3@3.43.2 -DCMAKE_POSITION_INDEPENDENT_CODE=On
boost@1.83 -DCMAKE_POSITION_INDEPENDENT_CODE=On --build -DCMAKE_CXX_FLAGS=" -std=c++14 -Wno-enum-constexpr-conversion -Wno-deprecated-builtins -Wno-deprecated-declarations "
facebook/[email protected] -X subdir -DCMAKE_DIR=build/cmake
# ROCmSoftwarePlatform/half@10abd99e7815f0ca5d892f58dd7d15a23b7cf92c --build
ROCmSoftwarePlatform/[email protected] -H sha256:a5f62769d28a73e60bc8d61022820f050e97c977c8f6f6275488db31512e1f42 -DBUILD_FAT_LIBROCKCOMPILER=1 -DCMAKE_IGNORE_PATH="/opt/conda/envs/py_3.8;/opt/conda/envs/py_3.9;/opt/conda/envs/py_3.10" -DCMAKE_IGNORE_PREFIX_PATH=/opt/conda
# ROCm/half@10abd99e7815f0ca5d892f58dd7d15a23b7cf92c --build
ROCm/[email protected] -H sha256:a5f62769d28a73e60bc8d61022820f050e97c977c8f6f6275488db31512e1f42 -DBUILD_FAT_LIBROCKCOMPILER=1 -DCMAKE_IGNORE_PATH="/opt/conda/envs/py_3.8;/opt/conda/envs/py_3.9;/opt/conda/envs/py_3.10" -DCMAKE_IGNORE_PREFIX_PATH=/opt/conda
nlohmann/[email protected] -DJSON_MultipleHeaders=ON -DJSON_BuildTests=Off
ROCmSoftwarePlatform/[email protected]
ROCmSoftwarePlatform/[email protected]
ROCmSoftwarePlatform/frugally-deep@9683d557eb672ee2304f80f6682c51242d748a50
ROCmSoftwarePlatform/composable_kernel@5d718e6b40ba22c9ce38f5733e1b13183f0e0417 -DCMAKE_BUILD_TYPE=Release -DINSTANCES_ONLY=ON
ROCm/[email protected]
ROCm/[email protected]
ROCm/frugally-deep@9683d557eb672ee2304f80f6682c51242d748a50
ROCm/composable_kernel@5d718e6b40ba22c9ce38f5733e1b13183f0e0417 -DCMAKE_BUILD_TYPE=Release -DINSTANCES_ONLY=ON
2 changes: 1 addition & 1 deletion src/hip/hip_build_utils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ MIOPEN_DECLARE_ENV_VAR_BOOL(MIOPEN_DEBUG_HIP_DUMP)
// This flag Paths are expected to be deprecated/modified
// in upcoming MAJOR Releases.
#define MIOPEN_CLANG_REL_PATH "llvm/bin/clang"
#define MIOPEN_OCL_REL_PATH "bin/clang-ocl"
#define MIOPEN_OCL_REL_PATH "bin/clang"
#define MIOPEN_CPPCLANG_REL_PATH "llvm/bin/clang++"
#define MIOPEN_OFFLOADBUNDLER_REL_PATH "llvm/bin/clang-offload-bundler"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ auto GetTestCases()
// solver is not broken. smoke_solver_ConvHipImplicitGemmV4R1Fwd is split to BF16+FP16 and
// FP32 tests because of WORKAROUND_ISSUE_2038, which disables validation of FP16 and BF16
// datatypes in this test, see
// https://github.com/ROCmSoftwarePlatform/MIOpen/pull/2043#issuecomment-1482657160
// https://github.com/ROCm/MIOpen/pull/2043#issuecomment-1482657160
const auto env_fwd = std::tuple{
std::pair{ENV(MIOPEN_FIND_ENFORCE), std::string_view("SEARCH_DB_UPDATE")},
std::pair{ENV(MIOPEN_DEBUG_TUNING_ITERATIONS_MAX), std::string_view("5")},
Expand Down
2 changes: 1 addition & 1 deletion test/rnn_seq_api.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -1640,7 +1640,7 @@ struct rnn_seq_api_test_driver : test_driver
fill_buffers(input, dy, hx, cx, dhy, dcy, weights);

// avoid BWD unexpected fails
// https://github.com/ROCmSoftwarePlatform/MIOpen/pull/2493#discussion_r1406959588
// https://github.com/ROCm/MIOpen/pull/2493#discussion_r1406959588
if(inVecLen == 1 && hiddenSize == 13 && seqLength == 1 && batchSize == 1)
{
tolerance = 110;
Expand Down

0 comments on commit eae8685

Please sign in to comment.