mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-05-14 02:02:46 +00:00
be25dd67750c87cd48a8f1834aa6a930bb3b4fbb
3879 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
be25dd6775 |
Fix the Composable Kernel CI and versions incompatibility (#4640)
## Motivation This PR has 4 patches: 1. Fix the CI error of grouped gemm. 2. Fix the incompatibility of old linux version. 3. Fix the potential errors of flatmm. 4. Address the previous comments of abquant eight warps pipeline solution. --------- Co-authored-by: illsilin_amdeng <Illia.Silin@amd.com> |
||
|
|
058be6c6e9 |
[CK_BUILDER] Fix two staging-compiler errors in CK builder code (#4598)
This PR fixes two compiler warnings that report as errors with the latest compiler: 1. In tensor descriptor, the `operator[]` accessor needs a `[[clang::lifetimebound]]` attribute. 2. In the unit tests for device buffer, there is a test that explicitly checks for an error on a pointer that went out of scope, so it needs a to disable `-Wlifetime-safety-permissive` in the test code. I ran the CK `smoke-builder` tests with the staging compiler to verify. --------- Co-authored-by: illsilin_amdeng <Illia.Silin@amd.com> |
||
|
|
676ed06e53 |
[CK] Add new fwd conv fp16/bf16 instances optimized for unit group size. (#4275)
## Proposed changes Added new FP16/BF16 instances that are optimized for group size = 1. The new instance use the compute optimized block GEMM pipeline. | CK prof command | Baseline (TFLOPs) | New V3 instances (TFLOPs) | |:-----|:------:|------:| | grouped_conv_fwd 1 1 1 0 1 0 1 2 1 32 2376 256 3 3 100 100 1 1 1 1 1 1 1 1 | 858.818 | 962.293 | | grouped_conv_fwd 1 1 1 0 1 0 1 2 1 32 256 256 3 3 100 100 1 1 1 1 1 1 1 1 | 979.987 | 1121.11 | | grouped_conv_fwd 1 1 1 0 1 0 1 2 1 32 2376 256 3 3 50 50 1 1 1 1 1 1 1 1 | 945.951 | 1091.66 | --- 🔁 Imported from [ROCm/composable_kernel#3670](https://github.com/ROCm/composable_kernel/pull/3670) 🧑💻 Originally authored by @vpietila-amd --------- Co-authored-by: Ville Pietilä <> Co-authored-by: Bartłomiej Kocot <barkocot@amd.com> Co-authored-by: Ville Pietilä <188998872+vpietila-amd@users.noreply.github.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> |
||
|
|
96b64858aa |
Add multi-file trace parsing and analysis pipeline (#4259)
Extends build time analysis from ROCm/composable_kernel#3644 to handle multiple trace files across build directories (see #4229): - pipeline.py: Generic pipeline framework with fluent interface for composable data processing. Provides parallel processing, progress tracking, and error handling independent of trace-specific code. Processes thousands of trace files at default resolution in minutes, aggregating results into in-memory DataFrames for analysis. - parse_build.py: Parse all trace files in a build directory - build_analysis_example.ipynb: Demonstrates pipeline aggregation across all build files The pipeline design improves capability (composable operations), performance (parallel processing), and user-friendliness (fluent API) of the analysis modules. It enables analyzing compilation patterns across the entire codebase with all trace data available in pandas DataFrames for interactive exploration. --- 🔁 Imported from [ROCm/composable_kernel#3704](https://github.com/ROCm/composable_kernel/pull/3704) 🧑💻 Originally authored by @shumway Co-authored-by: John Shumway <jshumway@amd.com> Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> |
||
|
|
7df73fafe0 |
feat: add new optimized tutorial kernels (#4272)
- Add 01_naive_gemm baseline implementation - Add 02_padding_k_first with PADDING_K_FIRST + MFMA_32x32x16 - Add 03_mfma_16x16x16 with PADDING_K_FIRST + MFMA_16x16x16 - Share common reference_gemm.hpp in parent gemm/ directory ## Proposed changes Please describe the motivation behind the pull request, whether it enables a new feature or fixes a bug. If there are associated pull requests or issues, please link them to the pull request. ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [ ] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [ ] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [ ] I have added inline documentation which enables the maintainers with understanding the motivation - [ ] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [ ] I have run `clang-format` on all changed files - [ ] Any dependent changes have been merged ## Discussion If this is a relatively large or complex change, feel free to start a discussion by explaining why you chose the solution you did and what alternatives you considered --- 🔁 Imported from [ROCm/composable_kernel#3676](https://github.com/ROCm/composable_kernel/pull/3676) 🧑💻 Originally authored by @AviralGoelAMD Co-authored-by: AviralGoelAMD <aviral.goel@amd.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> |
||
|
|
49808ab7b8 |
[CK_BUILDER] Move some smoke tests that require GPU (#4593)
Since the CK builder is focused on compile time logic, let's keep the `smoke-builder` target CPU-only so that it can be ran without a CPU. Alternatively, we could define a `smoke-cpu-builder` or some special subtarget, but it's probably simpler to just stick to CPU for this. (My thinking is that in general GPU testing will be heavier than the smoke tests. Further, the GPU testing code will likely move outside of the builder once builder code is moved out of experimental.) This PR clarifies that CPU-only intention for `smoke-builder` and moves some GPU testing code to `smoke-regression`. |
||
|
|
b14f34e97c |
[CK] Work around staging compiler lifetime warning (#4419)
## Motivation The staging compiler enables lifetime-safety warnings and we already worked around a few of them. This works around a few more instances that came up recently on gfx950 builds. The initial PR that resolved most issues: https://github.com/ROCm/composable_kernel/pull/3640 ## Technical Details This follows the pattern to locally ignore the newly added lifetime-safety warnings that were moved from experimental to production in upstream LLVM. As a result, CK turned them on and treats them as errors, which prevents the staging compiler from building CK. ## Test Plan ## Test Result ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> |
||
|
|
c41544e621 |
add memsetasync for ck moe splitk (#4282)
## Proposed changes add memsetasync for ck moe splitk to fix ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [ ] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [ ] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [ ] I have added inline documentation which enables the maintainers with understanding the motivation - [ ] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [ ] I have run `clang-format` on all changed files - [ ] Any dependent changes have been merged ## Discussion If this is a relatively large or complex change, feel free to start a discussion by explaining why you chose the solution you did and what alternatives you considered --- 🔁 Imported from [ROCm/composable_kernel#3630](https://github.com/ROCm/composable_kernel/pull/3630) 🧑💻 Originally authored by @lalala-sh --------- Co-authored-by: lalala-sh <Jiaxing.Wen@amd.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> |
||
|
|
b5d58b8bc5 |
[CK] add check for THEROCK_SANITIZER in cmake (#4514)
## Motivation Check whether the THEROCK_SANITIZER flag is set to ASAN or HOST_ASAN. ## Technical Details In case the THEROCK_SANITIZER flag is set to ASAN or HOST_ASAN and no GPU_TARGETS is selected, the list of the default targets will be set to "gfx908:xnack+;gfx90a:xnack+;gfx942:xnack+;gfx950:xnack+". ## Test Plan <!-- Explain any relevant testing done to verify this PR. --> ## Test Result <!-- Briefly summarize test outcomes. --> ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. |
||
|
|
14d8dc4714 |
[CK] Fix the launch_tests script. (#4525)
## Motivation Fix the script that filters the tests. ## Technical Details There were several places where the paths had to be updated for the launch_tests script to work correctly. ## Test Plan <!-- Explain any relevant testing done to verify this PR. --> ## Test Result <!-- Briefly summarize test outcomes. --> ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. --------- Co-authored-by: Vidyasagar Ananthan <vidyasagar.ananthan@amd.com> |
||
|
|
d0b17aab8b |
[CK] Optimize multi-dimensional static for loop decomposition (#4447)
## Motivation Recursive template implementations might initially seem attractive to minimize necessary coding. Unfortunately, this style is often affects readability and requires significant resources from the compiler to generate instantiation chains. In "high-traffic" code (e.g., used in many places + compilation units), this generally does not scale well and can bloat the overall compile times to unnecessary lengths. The aim of this PR is to take some of most high-traffic utility code and try our best to eliminate recursive templates in favor of fold expansions and constexpr function helpers. In local tests with clang build analyzer, device_grouped_conv2d_fwd_xdl_ngchw_gkcyx_ngkhw_f16_16x16_instance.cpp showed high hit-rates on slow template instantiations in static_for, dimensional static_for (static_ford), which are subsequently affected by implementation of the Sequence class and associated transforms. Example: **** Templates that took longest to instantiate: 70111 ms: ck::detail::applier<int, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1... (372 times, avg 188 ms) // **70 seconds!** The above is part of the implementation of static_for which uses Sequence classes.. ## Technical Details ### Summary of Optimization Techniques | Technique | Used In | Benefit | |-----------|---------|---------| | __Constexpr for-loop computation__ | sequence_reverse_inclusive_scan, sequence_map_inverse | Moves O(N) work from template instantiation to constexpr evaluation | | __Pack expansion with indexing__ | sequence_reverse, Sequence::Modify | Single template instantiation instead of recursive | | __Flat iteration + decomposition__ | ford, static_ford | O(1) template depth instead of O(N^D) | | __Pre-computed strides__ | index_decomposer | Enables O(1) linear-to-multi-index conversion | ### Impact on Compile Time These optimizations reduce template instantiation depth from O(N) or O(N^D) to O(1), which: 1. Reduces compiler memory usage 2. Reduces compile time exponentially for deep instantiation chains 3. Enables larger iteration spaces without hitting template depth limits ## Test Plan * Existing tests for Sequence are re-used to affirm correctness * Unit tests for ford and static_ford are added (dimensional looping) * 8 new regression tests specifically verify the fixes for the PR feedback: - `NonTrivialOrder3D_201` - Tests Orders<2,0,1> for static_ford - `NonTrivialOrder3D_201_Runtime` - Tests Orders<2,0,1> for ford - `ConsistencyWithNonTrivialOrder_201` - Verifies static_ford and ford consistency - `NonTrivialOrder3D_120` - Tests Orders<1,2,0> for static_ford - `NonTrivialOrder3D_120_Runtime` - Tests Orders<1,2,0> for ford - `NonTrivialOrder4D` - Tests 4D with Orders<3,1,0,2> for static_ford - `NonTrivialOrder4D_Runtime` - Tests 4D with Orders<3,1,0,2> for ford - `AsymmetricDimensionsWithOrder` - Tests asymmetric dimensions with non-trivial ordering ## Test Result ### Compile Time Comparison: `8b72bc8` (base) → `477e0686` (optimized) #### Commits in Range (8 commits) 1. `fd4ca17f48` - Optimize sequence_reverse_inclusive_scan and sequence_reverse 2. `7a7e3fdeef` - Optimize sequence_map_inverse 3. `92855c9913` - Optimize ford and static_ford calls to eliminate nested template recursion 4. `88a564032b` - Add unit tests for ford and static_ford 5. `1a0fb22217` - Fix clang-format 6. `8a0d26bddf` - Increase template recursion depth to 1024 7. `dc53bb6e20` - Address copilot feedback and add regression tests 8. `477e06861d` - Increase bracket depth to 1024 #### Build Timing Results | File | Base (8b72bc8759d9 | HEAD(a0438bd398) | Improvement | |------|------|------|-------------| | grouped_conv2d_fwd (f16) -j1 | 313.31s | 272.93s | __12.9% faster__ | | grouped_conv1d_fwd (bf16) -j1 | 79.33s | 68.61s | __13.5% faster__ | | grouped_conv1d_bwd_weight (f16) -j1| 15.77s | 14.31s | __9.2% faster__ | | device_grouped_conv2d_fwd_instance -j64 | s | s | __% faster__ | #### Key Optimizations 1. __sequence_reverse_inclusive_scan/sequence_reverse__: O(N) → O(1) template depth 2. __sequence_map_inverse__: O(N) → O(1) template depth 3. __ford/static_ford__: O(N^D) → O(1) template depth using flat iteration with index decomposition 4. __Copilot feedback fixes__: Corrected New2Old mapping for non-trivial orderings ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. --------- Co-authored-by: Max Podkorytov <4273004+tenpercent@users.noreply.github.com> |
||
|
|
7e1ef9762a |
Revert "[CK Conv] Add bwd weight instance for large-k shape" (#4506)
Reverts ROCm/rocm-libraries#4266 due to CI failures. Should be investigated by @johannes-graner |
||
|
|
6ed0dde669 |
[CK] Optimize vector type build times (#4471)
**Supercedes https://github.com/ROCm/rocm-libraries/pull/4281 due to CI
issues on import**
## Proposed changes
Build times can be affected by many different things and is highly
attributed to the way we write and use the code. Two critical areas of
the builds are **frontend parsing** and **backend codegen and
compilation**.
### Frontend Parsing
The length of the code, the include header tree and macro expansions all
affect the front-end parsing time.
This PR seeks to reduce the parsing time of the dtype_vector.hpp
vector_type class by reducing redundant code by generalization.
* Partial specializations of vector_type for native and non-native
datatypes have been generalized to one single class, consolidating all
of the data initialization and AsType casting requirements into one
place.
* The class nnvb_data_t_selector (e.g., Non-native vector base dataT
selector) class has been removed and replaced with scalar_type
instantiations as they have the same purpose. Scalar type class' purpose
is already to map generalized datatypes to native types compatible with
ext_vector_t.
### Backend Codegen
Template instantiation behavior can also affect build times. Recursive
instantiations are very slow versus concrete instantiations. The
compiler must make multiple passes to expand template instantiations so
we need to be careful about how they are used.
* Previous vector_type classes declared a union storage class, which
aliases StaticallyIndexedArray<T,N>.
```
template <typename T>
struct vector_type<T, 4, typename ck::enable_if_t<is_native_type<T>()>>
{
using d1_t = T;
typedef T d2_t __attribute__((ext_vector_type(2)));
typedef T d4_t __attribute__((ext_vector_type(4)));
using type = d4_t;
union
{
d4_t d4_;
StaticallyIndexedArray<d1_t, 4> d1x4_;
StaticallyIndexedArray<d2_t, 2> d2x2_;
StaticallyIndexedArray<d4_t, 1> d4x1_;
} data_;
...
};
```
* Upon further inspection, StaticallyIndexedArray is built on-top of a
recursive Tuple concatenation.
```
template <typename T, index_t N>
struct StaticallyIndexedArrayImpl
{
using type =
typename tuple_concat<typename StaticallyIndexedArrayImpl<T, N / 2>::type,
typename StaticallyIndexedArrayImpl<T, N - N / 2>::type>::type;
};
```
This union storage has been removed from the vector_type storage class.
* Further references to StaticallyIndexedArray have been replaced with
StaticallyIndexedArray_v2, which is a concrete implementation using
C-style arrays.
```
template <typename T, index_t N>
struct StaticallyIndexedArray_v2
{
...
T data_[N];
};
```
### Fixes
* Using bool datatype with vector_type was previously error prone. Bool,
as a native datatype would be stored into bool ext_vector_type(N) for
storage, which is a packed datatype. Meaning that for example,
sizeof(bool ext_vector_type(4)) == 1, which does not equal
sizeof(StaticallyIndexedArray<bool ext_vector_type(1), 4> == 4. The
union of these datatypes has incorrect data slicing, meaning that the
bits location of the packed bool do not match with the
StaticallyIndexedArray member. As such, vector_type will use C-Style
array storage for bool type instead of ext_vector_type.
```
template <typename T, index_t Rank>
using NativeVectorT = T __attribute__((ext_vector_type(Rank)));
sizeof(NativeVectorT<bool, 4>) == 1 (1 byte per 4 bool - packed)
element0 = bit 0 of byte 0
element1 = bit 1 of byte 0
element2 = bit 2 of byte 0
element3 = bit 3 of byte 0
sizeof(StaticallyIndexedArray[NativeVectorT<bool, 1>, 4] == 4 (1 byte per bool)
element0 = bit 0 of byte 0
element1 = bit 0 of byte 1
element1 = bit 0 of byte 2
element1 = bit 0 of byte 3
union{
NativeVectorT<bool, 4> d1_t;
...
StaticallyIndexedArray[NativeVectorT<bool,1>, 4] d4x1;
};
// union size == 4 which means invalid slicing!
```
* Math utilities such as next_power_of_two addressed for invalid cases
of X < 2
* Remove redundant implementation of next_pow2
### Additions
* integer_log2_floor to math.hpp
* is_power_of_two_integer to math.hpp
### Build Time Analysis
Machine: banff-cyxtera-s78-2
Target: gfx942
| Build Target | Threads | Frontend Parse Time (s) | Backend Codegen
Time (s) | TotalTime (s) | commitId |
|---------------|---------|-------------------------|--------------------------|---------------|
---------------|
| device_grouped_conv3d_fwd_bias_bnorm_clamp_instance | 1 | 1452 | 331 |
1783 |
|
||
|
|
4bf06885af |
[CK][CK TILE] Add has hot loop check for pipeline v1 (#4407)
## Motivation Add has hot loop check for pipeline v1 (v1 basic and v1 basic async). Enable more tests which have been fixed by this change. ## Technical Details Hot loop has been executed without num loop check. ## Test Plan test_grouped_convnd_fwd_tile ## Test Result Passed ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. AICK-651 AICK-663 |
||
|
|
9b81070cf3 |
[Conv] Add NumGroupsToMerge to BwdWeight type string (#4271)
## Proposed changes Add parameter to bwd weight V3 type string showing the number of groups to merge. This is required for MIOpen to be properly tuned since it uses type strings for performance database entries. In order to not break existing tuning databases, the parameter is added as a named suffix and only when group merging is enabled. ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [ ] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [ ] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [ ] I have added inline documentation which enables the maintainers with understanding the motivation - [ ] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [ ] I have run `clang-format` on all changed files - [ ] Any dependent changes have been merged ## Discussion If this is a relatively large or complex change, feel free to start a discussion by explaining why you chose the solution you did and what alternatives you considered --- 🔁 Imported from [ROCm/composable_kernel#3679](https://github.com/ROCm/composable_kernel/pull/3679) 🧑💻 Originally authored by @johannes-graner --------- Co-authored-by: Graner, Johannes <Johannes.Graner@amd.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> Co-authored-by: Bartłomiej Kocot <barkocot@amd.com> |
||
|
|
15635d4b11 |
[CK TILE] fix numerical errors of preshuffle_b (#4354)
This pull request introduces several improvements and fixes related to quantized grouped GEMM (General Matrix Multiply) pipelines and their supporting utilities. # The numerical issue ## Steps to reproduce ```bash Run ./bin/tile_example_gemm_weight_preshuffle -prec=fp8 ./bin/tile_example_gemm_weight_preshuffle -prec=int4 ``` # Solution The main changes address type correctness, improve data layout and shuffling logic, and expand test coverage to better validate different GEMM configurations. **Key changes include:** ### Data layout and shuffling logic * Refactored the logic in `shuffle_b_permuteN` to use `constexpr` variables for `KLane` and `ItemsPerAccess`, simplifying tile view construction and correcting the permutation order for improved efficiency and correctness (`tensor_shuffle_utils.hpp`). * Fixed the calculation of `KLaneBytes` in weight preshuffle pipeline policies to account for internal data type conversion (e.g., from `pk_int4_t` to `fp8`), ensuring accurate memory access and alignment in quantized GEMM policies (`wp_pipeline_agmem_bgmem_creg_base_policy.hpp`, `gemm_wp_abquant_pipeline_ag_bg_cr_base_policy.hpp`). [[1]](diffhunk://#diff-93f16cd76e6e24404777e682a5ac8e039913ddd6a438c7efd61fdda42276e4efL274-R275) [[2]](diffhunk://#diff-9c3d0fc3c014feed435bfd93ba1f8f9fb3e054dcc322deada3addf70bee5a58cL100-R105) ### Test infrastructure enhancements * Unit tests did not catch this issue since there were no tests for fp8. Added new configuration structs (`config_mn_16x16`, `config_mn_32x32`) to support additional GEMM tile shapes and updated tests to run with these configurations for broader coverage (`test_gemm_pipeline_util.hpp`). [[1]](diffhunk://#diff-5a5962b2c4aa7f6a87d1d6201ad383135e30df13b42654e997d870d57420d5b8R86-R103) [[2]](diffhunk://#diff-5a5962b2c4aa7f6a87d1d6201ad383135e30df13b42654e997d870d57420d5b8L255-R269) Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> |
||
|
|
39eaa5015d |
Add padding to cshuffle epilogue to avoid bank conflict (#4274)
## Proposed changes Added the padding to CShuffle Epilogue to avoid the bank conflicts of 64. Synced up and learned from the internal repo. ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [ ] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [ ] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [ ] I have added inline documentation which enables the maintainers with understanding the motivation - [ ] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [ ] I have run `clang-format` on all changed files - [ ] Any dependent changes have been merged ## Discussion If this is a relatively large or complex change, feel free to start a discussion by explaining why you chose the solution you did and what alternatives you considered --- 🔁 Imported from [ROCm/composable_kernel#3671](https://github.com/ROCm/composable_kernel/pull/3671) 🧑💻 Originally authored by @ThomasNing --------- Co-authored-by: ThomasNing <thomas.ning@amd.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> Co-authored-by: illsilin_amdeng <Illia.Silin@amd.com> |
||
|
|
8526bd2812 |
[CK][CK Tile] Temporary disable grouped conv fwd tile comp async instances (#4457)
## Motivation [CK][CK Tile] Temporary disable grouped conv fwd tile comp async instances due to the failures ## Technical Details disable configs to not comple these instances ## Test Plan test_grouped_convnd_fwd_Tile ## Test Result pending ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. |
||
|
|
682e466cf4 |
[Azure External CI] Disable Azure CI on rocm-libraries (#4460)
- Deleting all pipeline trigger files tied to Azure External CI from top-level and project-level. --------- Co-authored-by: amd-hsivasun <hsivasun@amd.com> |
||
|
|
201fec5e8a |
Add a README.md file to ck/library/util (#4277)
I'm collecting information about our current testing (#3664). As part of this work I a README to the directory to emphasize the GPU-first testing strategy and our support for type-specific tolerances. This readme contains internal code comments for CK developers and does not need ROCm documentation review. --- 🔁 Imported from [ROCm/composable_kernel#3665](https://github.com/ROCm/composable_kernel/pull/3665) 🧑💻 Originally authored by @shumway Co-authored-by: John Shumway <jshumway@amd.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> |
||
|
|
8b78b47f84 |
Adapt parser to monorepo (#4269)
## Proposed changes
Addressing issues found trying to run the dependency parser on MIOpen:
- Ninja is recording the full path, e.g.: [json]
```
"file_to_executables": {
"/home/rspauldi/repos/rocm-libraries/projects/miopen/include/miopen/miopen.h": [
```
- Running git in monorepo reports the full _relative_ path, e.g.:
```
"projects/miopen/include/miopen/miopen.h"
```
Of course, `git diff` also returns all files modified in every other
project's commits. These are filtered out as early as possible.
This solution searches for `rocm-libraries` in the `parsing` step, and
if found extracts the project name and stores it in
`enhanced_dependency_mapping.json`. Leading folders are truncated from
each file path, up to and including the project name. This allows
`_is_project_file` to remain unchanged.
The `selection` step then retrieves the project name from the json if it
is defined, and truncates the project folder from the `git diff` output
so the filenames exactly match the json entries.
## Checklist
Please put an `x` into the boxes that apply. You can also fill these out
after creating the PR. If you're not sure, please don't hesitate to ask.
- [ ] I have added tests relevant to the introduced functionality, and
the unit tests are passing locally
- [ ] I have added the test to REGRESSION_TESTS list defined at the top
of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more
than 30 seconds to run.
- [X] I have added inline documentation which enables the maintainers
with understanding the motivation
- [ ] I have removed the stale documentation which is no longer relevant
after this pull request
- [ ] (If this change is user-facing) I have added release notes which
provide the end users with a brief summary of the improvement from this
pull request
- [ ] I have run `clang-format` on all changed files
- [ ] Any dependent changes have been merged
## Discussion
Successfully runs on rocm-libraries MIOpen PRs and produces a list of
tests. I haven't verified the results yet.
This version is not applicable to CI since it operates on a
per-executable level and MIOpen CI uses the single gtest binary. I'll be
working towards that in future PRs over the next few weeks.
```
/home/rspauldi/repos/rocm-libraries/projects/miopen# git checkout miopen/sgundabo_enable_ck_bwd_wrw_navi
<run CMake with TEST_DISCRETE=ON>
# ninja tests
# root@rjs1:/home/rspauldi/repos/rocm-libraries/projects/miopen# python3 /dep/main.py parse build/build.ninja
Parsing ninja dependencies from: build/build.ninja
Parsing ninja build file...
Found 312 executables
Found 820 object-to-source mappings
Found 820 object files
Extracting detailed dependencies for all object files...
Processed 100/820 object files...
Processed 200/820 object files...
Processed 300/820 object files...
Processed 400/820 object files...
Processed 500/820 object files...
Processed 600/820 object files...
Processed 700/820 object files...
Processed 800/820 object files...
Completed dependency extraction for 820 object files
Building file-to-executable mapping...
Found rocm-libraries project: 'miopen'
Built mapping for 608 files
Files used by multiple executables: 216
Sample files with multiple dependencies:
build/include/miopen/config.h: 306 executables
build/include/miopen/export.h: 306 executables
build/include/miopen/export_internals.h: 304 executables
driver/InputFlags.hpp: 2 executables
driver/driver.hpp: 2 executables
=== Enhanced Dependency Mapping Summary ===
Total executables: 312
Total files mapped: 608
Total object files processed: 820
File types:
.cpp files: 310
.hpp files: 292
.h files: 6
Files used by multiple executables: 216
Top files with most dependencies:
build/include/miopen/config.h: 306 executables
build/include/miopen/export.h: 306 executables
include/miopen/miopen.h: 304 executables
src/include/miopen/config.hpp: 304 executables
build/include/miopen/export_internals.h: 304 executables
src/include/miopen/rank.hpp: 303 executables
src/include/miopen/errors.hpp: 302 executables
src/include/miopen/object.hpp: 302 executables
src/include/miopen/returns.hpp: 302 executables
src/include/miopen/sysinfo_utils.hpp: 302 executables
Exporting mapping to build/enhanced_file_executable_mapping.csv
Exporting complete mapping to build/enhanced_dependency_mapping.json
Results exported to:
CSV: build/enhanced_file_executable_mapping.csv
JSON: build/enhanced_dependency_mapping.json
root@rjs1:/home/rspauldi/repos/rocm-libraries/projects/miopen# python3 /dep/main.py select build/enhanced_dependency_mapping.json 1b13d8b72d54e34bdc7ae70dd2b6e809dca8b10e 09e5965d55ebbfacfd1ed18e5092580c2ffae748
Identified 30 files modified in project 'miopen'
Exported 304 tests to run to tests_to_run.json
```
I don't know if clang-format applies to scripts. If so, could someone
show me how to run it in CK?
---
🔁 Imported from
[ROCm/composable_kernel#3686](https://github.com/ROCm/composable_kernel/pull/3686)
🧑💻 Originally authored by @randyspauldingamd
Co-authored-by: Randy J. Spaulding <rspauldi@amd.com>
Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com>
Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com>
|
||
|
|
333816f842 |
[CK Conv] Add bwd weight instance for large-k shape (#4266)
## Proposed changes This instance improves the shape used in `./bin/ckProfiler grouped_conv_bwd_weight 1 2 0 2 0 1 2 1 32 2376 256 3 3 100 100 1 1 1 1 1 1 1 1 all` from 10.3 ms to 6.6 ms. ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [ ] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [ ] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [ ] I have added inline documentation which enables the maintainers with understanding the motivation - [ ] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [ ] I have run `clang-format` on all changed files - [ ] Any dependent changes have been merged ## Discussion If this is a relatively large or complex change, feel free to start a discussion by explaining why you chose the solution you did and what alternatives you considered --- 🔁 Imported from [ROCm/composable_kernel#3692](https://github.com/ROCm/composable_kernel/pull/3692) 🧑💻 Originally authored by @johannes-graner Co-authored-by: Graner, Johannes <johannes.graner@amd.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> Co-authored-by: Bartłomiej Kocot <barkocot@amd.com> |
||
|
|
f6bb48458d |
[CK_TILE]: PreshuffleB + PreshuffleBQuant for ABQuant pipeline (#4268)
## Proposed changes Implement BQuantPreshuffle option for the ABQuant PreshuffleB pipeline. ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [X] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [X] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [X] I have added inline documentation which enables the maintainers with understanding the motivation - [X] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [X] I have run `clang-format` on all changed files - [X] Any dependent changes have been merged --- 🔁 Imported from [ROCm/composable_kernel#3687](https://github.com/ROCm/composable_kernel/pull/3687) 🧑💻 Originally authored by @ErwinTerpstra --------- Co-authored-by: Erwin Terpstra <erwin.terpstra@streamhpc.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> |
||
|
|
1ac61a54c9 |
[CK_TILE] Blockscale Gemm Fix Multi-Arch Compilation (#4451)
## Motivation This PR updates CK_TILE blockscale GEMM-quant kernels and launch helpers to compile across multiple GPU architectures by introducing compile-time availability gating and a new attribute tag mechanism for kernel symbol/attribute specialization. ## Technical Details - Add an architecture-guarded `kIsAvailable` flag to the gfx950 pipeline and propagate availability handling into `QuantGemmKernel`. - Extend `make_kernel`/`kentry` to accept an `Attr` tag enabling per-kernel compile-time attributes (e.g., `no-packed-fp32-ops`) and unique symbols. - Update the blockscale GEMM quant example to pass kernel attributes and adjust gfx950 gating. ## Test Plan - CI - Local test: `cmake .. --preset dev -DGPU_TARGETS='gfx942;gfx950' -GNinja && ninja tile_example_gemm_quant` - Local test with ROCm/aiter#1954 ## Test Result <!-- Briefly summarize test outcomes. --> ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. |
||
|
|
d61393a714 |
Bump fonttools from 4.57.0 to 4.61.0 in /projects/composablekernel/docs/sphinx (#3090)
Bumps [fonttools](https://github.com/fonttools/fonttools) from 4.57.0 to 4.61.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fonttools/fonttools/releases">fonttools's releases</a>.</em></p> <blockquote> <h2>4.61.0</h2> <ul> <li>[varLib.main]: <strong>SECURITY</strong> Only use basename(vf.filename) to prevent path traversal attacks when running <code>fonttools varLib</code> command-line script, or code which invokes <code>fonttools.varLib.main()</code>. Fixes CVE-2025-66034, see: <a href="https://github.com/fonttools/fonttools/security/advisories/GHSA-768j-98cg-p3fv">https://github.com/fonttools/fonttools/security/advisories/GHSA-768j-98cg-p3fv</a>.</li> <li>[feaLib] Sort BaseLangSysRecords by tag (<a href="https://redirect.github.com/fonttools/fonttools/issues/3986">#3986</a>).</li> <li>Drop support for EOL Python 3.9 (<a href="https://redirect.github.com/fonttools/fonttools/issues/3982">#3982</a>).</li> <li>[instancer] Support --remove-overlaps for fonts with CFF2 table (<a href="https://redirect.github.com/fonttools/fonttools/issues/3975">#3975</a>).</li> <li>[CFF2ToCFF] Add --remove-overlaps option (<a href="https://redirect.github.com/fonttools/fonttools/issues/3976">#3976</a>).</li> <li>[feaLib] Raise an error for rsub with NULL target (<a href="https://redirect.github.com/fonttools/fonttools/issues/3979">#3979</a>).</li> <li>[bezierTools] Fix logic bug in curveCurveIntersections (<a href="https://redirect.github.com/fonttools/fonttools/issues/3963">#3963</a>).</li> <li>[feaLib] Error when condition sets have the same name (<a href="https://redirect.github.com/fonttools/fonttools/issues/3958">#3958</a>).</li> <li>[cu2qu.ufo] skip processing empty glyphs to support sparse kerning masters (<a href="https://redirect.github.com/fonttools/fonttools/issues/3956">#3956</a>).</li> <li>[unicodedata] Update to Unicode 17. Require <code>unicodedata2 >= 17.0.0</code> when installed with 'unicode' extra.</li> </ul> <h2>4.60.1</h2> <ul> <li>[ufoLib] Reverted accidental method name change in <code>UFOReader.getKerningGroupConversionRenameMaps</code> that broke compatibility with downstream projects like defcon (<a href="https://redirect.github.com/fonttools/fonttools/issues/3948">#3948</a>, <a href="https://redirect.github.com/fonttools/fonttools/issues/3947">#3947</a>, <a href="https://redirect.github.com/robotools/defcon/issues/478">robotools/defcon#478</a>).</li> <li>[ufoLib] Added test coverage for <code>getKerningGroupConversionRenameMaps</code> method (<a href="https://redirect.github.com/fonttools/fonttools/issues/3950">#3950</a>).</li> <li>[subset] Don't try to subset BASE table; pass it through by default instead (<a href="https://redirect.github.com/fonttools/fonttools/issues/3949">#3949</a>).</li> <li>[subset] Remove empty BaseRecord entries in MarkBasePos lookups (<a href="https://redirect.github.com/fonttools/fonttools/issues/3897">#3897</a>, <a href="https://redirect.github.com/fonttools/fonttools/issues/3892">#3892</a>).</li> <li>[subset] Add pruning for MarkLigPos and MarkMarkPos lookups (<a href="https://redirect.github.com/fonttools/fonttools/issues/3946">#3946</a>).</li> <li>[subset] Remove duplicate features when subsetting (<a href="https://redirect.github.com/fonttools/fonttools/issues/3945">#3945</a>).</li> <li>[Docs] Added documentation for the visitor module (<a href="https://redirect.github.com/fonttools/fonttools/issues/3944">#3944</a>).</li> </ul> <h2>4.60.0</h2> <ul> <li> <p>[pointPen] Allow <code>reverseFlipped</code> parameter of <code>DecomposingPointPen</code> to take a <code>ReverseFlipped</code> enum value to control whether/how to reverse contour direction of flipped components, in addition to the existing True/False. This allows to set <code>ReverseFlipped.ON_CURVE_FIRST</code> to ensure that the decomposed outline starts with an on-curve point before being reversed, for better consistency with other segment-oriented contour transformations. The change is backward compatible, and the default behavior hasn't changed (<a href="https://redirect.github.com/fonttools/fonttools/issues/3934">#3934</a>).</p> </li> <li> <p>[filterPen] Added <code>ContourFilterPointPen</code>, base pen for buffered contour operations, and <code>OnCurveStartPointPen</code> filter to ensure contours start with an on-curve point (<a href="https://redirect.github.com/fonttools/fonttools/issues/3934">#3934</a>).</p> </li> <li> <p>[cu2qu] Fixed difference in cython vs pure-python complex division by real number (<a href="https://redirect.github.com/fonttools/fonttools/issues/3930">#3930</a>).</p> </li> <li> <p>[varLib.avar] Refactored and added some new sub-modules and scripts (<a href="https://redirect.github.com/fonttools/fonttools/issues/3926">#3926</a>).</p> <ul> <li><code>varLib.avar.build</code> module to build avar (and a missing fvar) binaries into a possibly empty TTFont,</li> <li><code>varLib.avar.unbuild</code> module to print a .designspace snippet that would generate the same avar binary,</li> <li><code>varLib.avar.map</code> module to take TTFont and do the mapping, in user/normalized space,</li> <li><code>varLib.avar.plan</code> module moved from <code>varLib.avarPlanner</code>.</li> </ul> <p>The bare <code>fonttools varLib.avar</code> script is deprecated, in favour of <code>fonttools varLib.avar.build</code> (or <code>unbuild</code>).</p> </li> <li> <p>[interpolatable] Clarify <code>linear_sum_assignment</code> backend options and minimal dependency usage (<a href="https://redirect.github.com/fonttools/fonttools/issues/3927">#3927</a>).</p> </li> <li> <p>[post] Speed up <code>build_psNameMapping</code> (<a href="https://redirect.github.com/fonttools/fonttools/issues/3923">#3923</a>).</p> </li> <li> <p>[ufoLib] Added typing annotations to fontTools.ufoLib (<a href="https://redirect.github.com/fonttools/fonttools/issues/3875">#3875</a>).</p> </li> </ul> <h2>4.59.2</h2> <ul> <li>[varLib] Clear <code>USE_MY_METRICS</code> component flags when inconsistent across masters (<a href="https://redirect.github.com/fonttools/fonttools/issues/3912">#3912</a>).</li> <li>[varLib.instancer] Avoid negative advance width/height values when instatiating HVAR/VVAR, (unlikely in well-behaved fonts) (<a href="https://redirect.github.com/fonttools/fonttools/issues/3918">#3918</a>).</li> <li>[subset] Fix shaping behaviour when pruning empty mark sets (<a href="https://redirect.github.com/fonttools/fonttools/issues/3915">#3915</a>, <a href="https://redirect.github.com/harfbuzz/harfbuzz/issues/5499">harfbuzz/harfbuzz#5499</a>).</li> <li>[cu2qu] Fixed <code>dot()</code> product of perpendicular vectors not always returning exactly 0.0 in all Python implementations (<a href="https://redirect.github.com/fonttools/fonttools/issues/3911">#3911</a>)</li> <li>[varLib.instancer] Implemented fully-instantiating <code>avar2</code> fonts (<a href="https://redirect.github.com/fonttools/fonttools/issues/3909">#3909</a>).</li> <li>[feaLib] Allow float values in <code>VariableScalar</code>'s axis locations (<a href="https://redirect.github.com/fonttools/fonttools/issues/3906">#3906</a>, <a href="https://redirect.github.com/fonttools/fonttools/issues/3907">#3907</a>).</li> <li>[cu2qu] Handle special case in <code>calc_intersect</code> for degenerate cubic curves where 3 to 4 control points are equal (<a href="https://redirect.github.com/fonttools/fonttools/issues/3904">#3904</a>).</li> </ul> <h2>4.59.1</h2> <ul> <li>[featureVars] Update OS/2.usMaxContext if possible after addFeatureVariationsRaw (<a href="https://redirect.github.com/fonttools/fonttools/issues/3894">#3894</a>).</li> <li>[vhmtx] raise TTLibError('not enough data...') when hmtx/vmtx are truncated (<a href="https://redirect.github.com/fonttools/fonttools/issues/3843">#3843</a>, <a href="https://redirect.github.com/fonttools/fonttools/issues/3901">#3901</a>).</li> <li>[feaLib] Combine duplicate features that have the same set of lookups regardless of the order in which those lookups are added to the feature (<a href="https://redirect.github.com/fonttools/fonttools/issues/3895">#3895</a>).</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/fonttools/fonttools/blob/main/NEWS.rst">fonttools's changelog</a>.</em></p> <blockquote> <h2>4.61.0 (released 2025-11-28)</h2> <ul> <li>[varLib.main]: <strong>SECURITY</strong> Only use basename(vf.filename) to prevent path traversal attacks when running <code>fonttools varLib</code> command, or code which invokes <code>fonttools.varLib.main()</code>. Fixes CVE-2025-66034, see: <a href="https://github.com/fonttools/fonttools/security/advisories/GHSA-768j-98cg-p3fv">https://github.com/fonttools/fonttools/security/advisories/GHSA-768j-98cg-p3fv</a>.</li> <li>[feaLib] Sort BaseLangSysRecords by tag (<a href="https://redirect.github.com/fonttools/fonttools/issues/3986">#3986</a>).</li> <li>Drop support for EOL Python 3.9 (<a href="https://redirect.github.com/fonttools/fonttools/issues/3982">#3982</a>).</li> <li>[instancer] Support --remove-overlaps for fonts with CFF2 table (<a href="https://redirect.github.com/fonttools/fonttools/issues/3975">#3975</a>).</li> <li>[CFF2ToCFF] Add --remove-overlaps option (<a href="https://redirect.github.com/fonttools/fonttools/issues/3976">#3976</a>).</li> <li>[feaLib] Raise an error for rsub with NULL target (<a href="https://redirect.github.com/fonttools/fonttools/issues/3979">#3979</a>).</li> <li>[bezierTools] Fix logic bug in curveCurveIntersections (<a href="https://redirect.github.com/fonttools/fonttools/issues/3963">#3963</a>).</li> <li>[feaLib] Error when condition sets have the same name (<a href="https://redirect.github.com/fonttools/fonttools/issues/3958">#3958</a>).</li> <li>[cu2qu.ufo] skip processing empty glyphs to support sparse kerning masters (<a href="https://redirect.github.com/fonttools/fonttools/issues/3956">#3956</a>).</li> <li>[unicodedata] Update to Unicode 17. Require <code>unicodedata2 >= 17.0.0</code> when installed with 'unicode' extra.</li> </ul> <h2>4.60.1 (released 2025-09-29)</h2> <ul> <li>[ufoLib] Reverted accidental method name change in <code>UFOReader.getKerningGroupConversionRenameMaps</code> that broke compatibility with downstream projects like defcon (<a href="https://redirect.github.com/fonttools/fonttools/issues/3948">#3948</a>, <a href="https://redirect.github.com/fonttools/fonttools/issues/3947">#3947</a>, <a href="https://redirect.github.com/robotools/defcon/issues/478">robotools/defcon#478</a>).</li> <li>[ufoLib] Added test coverage for <code>getKerningGroupConversionRenameMaps</code> method (<a href="https://redirect.github.com/fonttools/fonttools/issues/3950">#3950</a>).</li> <li>[subset] Don't try to subset BASE table; pass it through by default instead (<a href="https://redirect.github.com/fonttools/fonttools/issues/3949">#3949</a>).</li> <li>[subset] Remove empty BaseRecord entries in MarkBasePos lookups (<a href="https://redirect.github.com/fonttools/fonttools/issues/3897">#3897</a>, <a href="https://redirect.github.com/fonttools/fonttools/issues/3892">#3892</a>).</li> <li>[subset] Add pruning for MarkLigPos and MarkMarkPos lookups (<a href="https://redirect.github.com/fonttools/fonttools/issues/3946">#3946</a>).</li> <li>[subset] Remove duplicate features when subsetting (<a href="https://redirect.github.com/fonttools/fonttools/issues/3945">#3945</a>).</li> <li>[Docs] Added documentation for the visitor module (<a href="https://redirect.github.com/fonttools/fonttools/issues/3944">#3944</a>).</li> </ul> <h2>4.60.0 (released 2025-09-17)</h2> <ul> <li>[pointPen] Allow <code>reverseFlipped</code> parameter of <code>DecomposingPointPen</code> to take a <code>ReverseFlipped</code> enum value to control whether/how to reverse contour direction of flipped components, in addition to the existing True/False. This allows to set <code>ReverseFlipped.ON_CURVE_FIRST</code> to ensure that the decomposed outline starts with an on-curve point before being reversed, for better consistency with other segment-oriented contour transformations. The change is backward compatible, and the default behavior hasn't changed (<a href="https://redirect.github.com/fonttools/fonttools/issues/3934">#3934</a>).</li> <li>[filterPen] Added <code>ContourFilterPointPen</code>, base pen for buffered contour operations, and <code>OnCurveStartPointPen</code> filter to ensure contours start with an on-curve point (<a href="https://redirect.github.com/fonttools/fonttools/issues/3934">#3934</a>).</li> <li>[cu2qu] Fixed difference in cython vs pure-python complex division by real number (<a href="https://redirect.github.com/fonttools/fonttools/issues/3930">#3930</a>).</li> <li>[varLib.avar] Refactored and added some new sub-modules and scripts (<a href="https://redirect.github.com/fonttools/fonttools/issues/3926">#3926</a>). <ul> <li><code>varLib.avar.build</code> module to build avar (and a missing fvar) binaries into a possibly empty TTFont,</li> <li><code>varLib.avar.unbuild</code> module to print a .designspace snippet that would generate the same avar binary,</li> <li><code>varLib.avar.map</code> module to take TTFont and do the mapping, in user/normalized space,</li> <li><code>varLib.avar.plan</code> module moved from <code>varLib.avarPlanner</code>. The bare <code>fonttools varLib.avar</code> script is deprecated, in favour of <code>fonttools varLib.avar.build</code> (or <code>unbuild</code>).</li> </ul> </li> <li>[interpolatable] Clarify <code>linear_sum_assignment</code> backend options and minimal dependency usage (<a href="https://redirect.github.com/fonttools/fonttools/issues/3927">#3927</a>).</li> <li>[post] Speed up <code>build_psNameMapping</code> (<a href="https://redirect.github.com/fonttools/fonttools/issues/3923">#3923</a>).</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
a703c54319 |
[CK Tools] Auto-enable unbuffered output for Python commands (#4265)
ck-docker exec and ck-exec now automatically detect Python commands and set PYTHONUNBUFFERED=1 to enable live output streaming. This eliminates the need to manually set the environment variable when running Python scripts that print progress updates. The detection matches python, python3, or any .py file argument. This helps in watching live terminal output when a python script is running inside the container. --- 🔁 Imported from [ROCm/composable_kernel#3694](https://github.com/ROCm/composable_kernel/pull/3694) 🧑💻 Originally authored by @AviralGoelAMD Co-authored-by: AviralGoelAMD <aviral.goel@amd.com> Co-authored-by: Claude (claude-opus-4.5) <noreply@anthropic.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> |
||
|
|
2201d13d58 |
Bump pillow from 11.2.1 to 11.3.0 in /projects/composablekernel/docs/sphinx (#475)
Bumps [pillow](https://github.com/python-pillow/Pillow) from 11.2.1 to 11.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/python-pillow/Pillow/releases">pillow's releases</a>.</em></p> <blockquote> <h2>11.3.0</h2> <p><a href="https://pillow.readthedocs.io/en/stable/releasenotes/11.3.0.html">https://pillow.readthedocs.io/en/stable/releasenotes/11.3.0.html</a></p> <h2>Deprecations</h2> <ul> <li>Deprecate fromarray mode argument <a href="https://redirect.github.com/python-pillow/Pillow/issues/9018">#9018</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Deprecate saving I mode images as PNG <a href="https://redirect.github.com/python-pillow/Pillow/issues/9023">#9023</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> </ul> <h2>Documentation</h2> <ul> <li>Added release notes for <a href="https://redirect.github.com/python-pillow/Pillow/issues/9041">#9041</a> <a href="https://redirect.github.com/python-pillow/Pillow/issues/9042">#9042</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Add release notes for <a href="https://redirect.github.com/python-pillow/Pillow/issues/8912">#8912</a> and <a href="https://redirect.github.com/python-pillow/Pillow/issues/8969">#8969</a> <a href="https://redirect.github.com/python-pillow/Pillow/issues/9019">#9019</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>ImageFont does not handle multiline text <a href="https://redirect.github.com/python-pillow/Pillow/issues/9000">#9000</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Updated Ubuntu CI targets <a href="https://redirect.github.com/python-pillow/Pillow/issues/8988">#8988</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Update MinGW package names <a href="https://redirect.github.com/python-pillow/Pillow/issues/8987">#8987</a> [<a href="https://github.com/H4M5TER"><code>@H4M5TER</code></a>]</li> <li>Updated docstring <a href="https://redirect.github.com/python-pillow/Pillow/issues/8943">#8943</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Mention that tobytes() with the raw encoder uses Pack.c <a href="https://redirect.github.com/python-pillow/Pillow/issues/8878">#8878</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Refactor docs <code>Makefile</code> <a href="https://redirect.github.com/python-pillow/Pillow/issues/8933">#8933</a> [<a href="https://github.com/hugovk"><code>@hugovk</code></a>]</li> <li>Add template for quarterly release issue <a href="https://redirect.github.com/python-pillow/Pillow/issues/8932">#8932</a> [<a href="https://github.com/aclark4life"><code>@aclark4life</code></a>]</li> <li>Add list of third party plugins <a href="https://redirect.github.com/python-pillow/Pillow/issues/8910">#8910</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Update redirected URL <a href="https://redirect.github.com/python-pillow/Pillow/issues/8919">#8919</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Docs: use sentence case for headers <a href="https://redirect.github.com/python-pillow/Pillow/issues/8914">#8914</a> [<a href="https://github.com/hugovk"><code>@hugovk</code></a>]</li> <li>Docs: remove unused Makefile targets <a href="https://redirect.github.com/python-pillow/Pillow/issues/8917">#8917</a> [<a href="https://github.com/hugovk"><code>@hugovk</code></a>]</li> <li>Remove indentation from lists <a href="https://redirect.github.com/python-pillow/Pillow/issues/8915">#8915</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Python 3.13 is tested on Arch <a href="https://redirect.github.com/python-pillow/Pillow/issues/8894">#8894</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Move XV Thumbnails to read only section <a href="https://redirect.github.com/python-pillow/Pillow/issues/8893">#8893</a> [<a href="https://github.com/aclark4life"><code>@aclark4life</code></a>]</li> <li>Updated macOS tested Pillow versions <a href="https://redirect.github.com/python-pillow/Pillow/issues/8890">#8890</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> </ul> <h2>Dependencies</h2> <ul> <li>Add AVIF to wheels using only aomenc and dav1d AVIF codecs for reduced size <a href="https://redirect.github.com/python-pillow/Pillow/issues/8858">#8858</a> [<a href="https://github.com/fdintino"><code>@fdintino</code></a>]</li> <li>Use same AVIF URL when fetching dependency <a href="https://redirect.github.com/python-pillow/Pillow/issues/8871">#8871</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Update dependency mypy to v1.16.1 <a href="https://redirect.github.com/python-pillow/Pillow/issues/9026">#9026</a> [@<a href="https://github.com/apps/renovate">renovate[bot]</a>]</li> <li>Update libpng to 1.6.49 <a href="https://redirect.github.com/python-pillow/Pillow/issues/9014">#9014</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Update dependency cibuildwheel to v3 <a href="https://redirect.github.com/python-pillow/Pillow/issues/9010">#9010</a> [@<a href="https://github.com/apps/renovate">renovate[bot]</a>]</li> <li>Updated libjpeg-turbo to 3.1.1 <a href="https://redirect.github.com/python-pillow/Pillow/issues/9009">#9009</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Update dependency mypy to v1.16.0 <a href="https://redirect.github.com/python-pillow/Pillow/issues/8991">#8991</a> [@<a href="https://github.com/apps/renovate">renovate[bot]</a>]</li> <li>Updated libpng to 1.6.48 <a href="https://redirect.github.com/python-pillow/Pillow/issues/8940">#8940</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Updated Ghostscript to 10.5.1 <a href="https://redirect.github.com/python-pillow/Pillow/issues/8939">#8939</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Updated harfbuzz to 11.2.1 <a href="https://redirect.github.com/python-pillow/Pillow/issues/8937">#8937</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Updated libavif to 1.3.0 <a href="https://redirect.github.com/python-pillow/Pillow/issues/8949">#8949</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Update dependency cibuildwheel to v2.23.3 <a href="https://redirect.github.com/python-pillow/Pillow/issues/8931">#8931</a> [@<a href="https://github.com/apps/renovate">renovate[bot]</a>]</li> <li>Updated harfbuzz to 11.1.0 <a href="https://redirect.github.com/python-pillow/Pillow/issues/8904">#8904</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> </ul> <h2>Testing</h2> <ul> <li>Add <code>match</code> parameter to <code>pytest.warns()</code> <a href="https://redirect.github.com/python-pillow/Pillow/issues/9038">#9038</a> [<a href="https://github.com/hugovk"><code>@hugovk</code></a>]</li> <li>Increase pytest verbosity <a href="https://redirect.github.com/python-pillow/Pillow/issues/9040">#9040</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Improve SgiImagePlugin test coverage <a href="https://redirect.github.com/python-pillow/Pillow/issues/8896">#8896</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> <li>Update ruff pre-commit ID <a href="https://redirect.github.com/python-pillow/Pillow/issues/8994">#8994</a> [<a href="https://github.com/radarhere"><code>@radarhere</code></a>]</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
23b32f1ff8 |
[CK] CK Tile grouped convolution direct load (#4406)
## Motivation CK Tile grouped convolution forward direct load support. ## Technical Details Basic pipeline for direct load and new instances for forward for v1 and v4 pipelines. ## Test Plan test_grouped_convnd_fwd_tile ## Test Result CI pending ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. AICK-130 |
||
|
|
fdb1a08e6f |
Enable group mode (varlen) kernel generation for PyTorch integration (#4292)
## Proposed changes This PR enables group mode (variable-length attention) kernel generation for PyTorch's CK SDPA backend. ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [X] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [ ] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [ ] I have added inline documentation which enables the maintainers with understanding the motivation - [ ] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [X] I have run `clang-format` on all changed files - [ ] Any dependent changes have been merged ## Discussion The change is minimal (single line deletion) but enables a significant feature: variable-length attention support for ROCm users via PyTorch's torch.nn.attention.varlen API. --- 🔁 Imported from [ROCm/composable_kernel#3553](https://github.com/ROCm/composable_kernel/pull/3553) 🧑💻 Originally authored by @chinmaydk99 Co-authored-by: Chinmay_Kuchinad <ChinmayDattanand.Kuchinad@amd.com> |
||
|
|
784a03af29 |
[CK] Fix grouped conv fwd transform for merged groups (#4399)
## Motivation [CK] Fix grouped conv fwd transform for merged groups for 1d and 3d. ## Technical Details After optimizations for 2d there is a lack of implementation for 1d and 3d ## Test Plan test_grouped_convnd_fwd ## Test Result pending CI ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. |
||
|
|
0a9935043a |
[CK] MICI: Disable failure pattern checking (#4373)
## Motivation - ck mici jobs hanging at end, possibly at failure pattern checking ## Technical Details - Disable failure pattern checking to see if hanging goes away ## Test Plan - Observe behavior after merge |
||
|
|
4304c2c38e |
[CK_TILE] Add blockscale GEMM support for EightWarps on gfx950 (#4280)
## Proposed changes gemm blockscale eightwarps support ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [ ] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [ ] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [ ] I have added inline documentation which enables the maintainers with understanding the motivation - [ ] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [x] I have run `clang-format` on all changed files - [x] Any dependent changes have been merged ## Discussion If this is a relatively large or complex change, feel free to start a discussion by explaining why you chose the solution you did and what alternatives you considered --- 🔁 Imported from [ROCm/composable_kernel#3650](https://github.com/ROCm/composable_kernel/pull/3650) 🧑💻 Originally authored by @kensclin --------- Co-authored-by: KenSCLin <lshyhchy@amd.com> Co-authored-by: Ding, Yi <yi.ding@amd.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> Co-authored-by: Thomas Ning <Thomas.Ning@amd.com> |
||
|
|
dfa95522d3 |
[CK_TILE] Add support and tests for V6 pipeline in conv fwd (#4357)
Added support for conv v6 pipeline in ck tile's convolution forward kernel. CK Tile v6 pipeline is the equivalent to old ck's V5 pipeline and should be faster than other pipelines for some cases. This PR also adds tests inside profiler that's currently inside experimental directory, so now we should be able to detect regressions easier. --------- Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> Co-authored-by: subhajitdchow <sduttach@amd.com> |
||
|
|
bb15392230 |
[CK] Add fwd conv group merging to v3 conv instances (#4273)
## Proposed changes Added conv group merging to the (universal) V3 fwd conv pipeline. The new instance improves fwd conv performance when the number of input/output channel per group is low. On MI300 (`gfx942`) we get | CK prof command | Baseline (TFLOPS) | V3 group merging (TFLOPS) | |:-----|:------:|------:| | grouped_conv_fwd 1 1 1 0 1 0 1 2 32 32 4 4 3 3 200 200 1 1 1 1 1 1 1 1 | 3.86035 | 8.36796 | | grouped_conv_fwd 1 1 1 0 1 0 1 2 32 32 8 8 3 3 200 200 2 2 1 1 1 1 1 1 | 10.1867 | 13.4677 | | grouped_conv_fwd 1 1 1 0 1 0 1 2 32 32 8 8 3 3 100 100 1 2 1 1 1 1 1 1 | 11.7875 | 16.3657 | --- 🔁 Imported from [ROCm/composable_kernel#3675](https://github.com/ROCm/composable_kernel/pull/3675) 🧑💻 Originally authored by @vpietila-amd --------- Co-authored-by: Ville Pietilä <> Co-authored-by: Ville Pietilä <188998872+vpietila-amd@users.noreply.github.com> Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com> Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> Co-authored-by: Bartlomiej Kocot <barkocot@amd.com> |
||
|
|
2a765fbbad |
[CK_TILE] Fix MMA concepts compiler error (#4381)
## Motivation
CK Tile is required to support certain older OSs; on these OSs, cpp 20
is not fully supported. For ROCm 7.2, compiler errors occur on one of
these older OSs. An example of this error is as follows:
```bash
/composable_kernel/include/ck_tile/core/arch/mma/amdgcn_mma.hpp:34:28: error: expected concept name with optional arguments
34 | { MmaOp::kAMBlock } -> std::convertible_to<unsigned int>;
|
```
The goal of this PR is to resolve these compiler errors.
## Technical Details
The existing guards around the mma concepts only check if the concepts
language feature is supported, as follows:
```cpp
#if defined(__cpp_concepts) && __cpp_concepts >= 201907L
// ...
template <typename CtrlFlags>
concept CtrlFlagsGfx9I = requires(CtrlFlags ctrlFlags) {
// Flag members for Gfx9 MFMA instructions
{ CtrlFlags::Cbsz } -> std::convertible_to<int>;
{ CtrlFlags::Abid } -> std::convertible_to<int>;
{ CtrlFlags::Blgp } -> std::convertible_to<int>;
};
#endif // defined(__cpp_concepts) && __cpp_concepts >= 201907L
```
That said, in cases where functionality from the `<concepts>` header is
used (e.g., `std::convertible_to`), this guard fails to check whether
the `<concepts>` header is available.
This change adds an additional check to the concepts that make use of
functionality from the `<concepts>` header to ensure the header is
available.
## Test Plan
I tested the changes on the relevant docker for gfx90a, gfx950, and
gfx942 and the compiler issue is not present.
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
|
||
|
|
01d37b171d |
Increase tolerance for FP16 GEMM tests to handle non-deterministic ro… (#4335)
…unding Three tests were failing intermittently with small errors (0.01-1.5%) due to non-deterministic FP16 accumulation order from GPU thread scheduling: - test_ck_tile_batched_gemm - test_ck_tile_grouped_gemm_preshuffle - test_ck_tile_grouped_gemm_multi_d These tests use kbatch=1 (no split-K), so errors are from order-dependent rounding, not atomics. Increased tolerances from 1e-3 to 2e-3 (0.2%) to account for FP16 precision limits while still catching real bugs. - [x] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> |
||
|
|
0b4203702c |
[CK] add inter/intrawave scheduling concept doc (#4300)
## Proposed changes Adding information about inter/intrawave scheduling --- 🔁 Imported from [ROCm/composable_kernel#3660](https://github.com/ROCm/composable_kernel/pull/3660) 🧑💻 Originally authored by @spolifroni-amd --------- Co-authored-by: spolifroni-amd <sandra.polifroni@amd.com> Co-authored-by: assistant-librarian[bot] <assistant-librarian[bot]@users.noreply.github.com> Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com> Co-authored-by: illsilin_amdeng <Illia.Silin@amd.com> |
||
|
|
f18a97a1f2 |
[CK] Workaround blockscale wp test failure (#4372)
## Motivation Workaround to fix blockscale wp test failure for pipeline v3 ## Technical Details <!-- Explain the changes along with any relevant GitHub links. --> ## Test Plan <!-- Explain any relevant testing done to verify this PR. --> ## Test Result <!-- Briefly summarize test outcomes. --> ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. |
||
|
|
b5d4754abf |
[CK] fix path for build filter (#4375)
## Motivation Fix the filter that determines whether CI builds are necessary. ## Technical Details A script checks the files list returned by git diff and checks whether any code source was modified. If not, if only documentation was changed, it will allow skipping the builds. We make sure we only look at the changes in projects/composablekernel/ folder. |
||
|
|
757438ef9c |
[ci] Adding mi350 required group ID (#4378)
After updating mi325 group-id, we are noticing errors for mi350. Tested here for mi350: https://github.com/ROCm/TheRock/actions/runs/21733399385/job/62692971370 Tested here for mi325: https://github.com/ROCm/TheRock/actions/runs/21759203211/job/62778060417 Adding both work properly |
||
|
|
2a054fc767 |
[CK] a bunch of CI fixes. (#4361)
## Motivation Fixing some of the CK CI issues ## Technical Details fixing paths to dockerfiles and scripts; moving codegen tests to separate stage (collides with main build since you must call cmake from same folder but different options); fixing a couple of clang compilation issues with staging compiler; |
||
|
|
f382d48125 |
[CK] MICI: Fix git diff in selective_test_filter.py (#4352)
## Motivation - git diff needs access to reference repo ## Technical Details - mount reference repo path into docker for selective_test_filter.py to access ## Test Plan - tested in MICI ## Test Result - launch_tests.sh ran successfully |
||
|
|
684654cf84 |
[ci] Updating variable group-id for OSSCI (#4360)
OSSCI migrated mi325s, so need a new groupID Sanity works here: https://github.com/ROCm/TheRock/actions/runs/21723540679/job/62659665907 normal run works here: https://github.com/ROCm/TheRock/actions/runs/21723540679/job/62659791422 I've dabbled with organization variables, however, this does not work for forks so for now, we will do the manual update |
||
|
|
9ac0ae7cba |
[composablekernel] fix failure status (#4351)
## Motivation Pipelines were failing on Math CI status check. ## Technical Details For the success case, we just changed the config in Jenkins to use a proper app token and no code changes were required. However, the failure case would not have worked as coded, so we needed to move that outside of the `rocmnode()` block. ## Test Plan I removed all of the CI in one of the commits to quickly test, and then added it back. Got a successful "success" message and "failure" message produced |
||
|
|
ece63708f2 |
[CK] MICI: Correct path for build trace script (#4349)
## Motivation - Corrects path to script due to superrepo migration - Forces all tests to run by default ## Technical Details - now in /projects/composablekernel --------- Co-authored-by: illsilin_amdeng <Illia.Silin@amd.com> |
||
|
|
e3f6354c67 |
[CK] MICI: Use reference repo for checkout operations (#4336)
## Motivation - Maintain a reference repo on slave nodes that speeds up any clone/checkout operations ## Technical Details - clone a ref repo if it does not exist - update ref repo if it does exist - checkout after ref repo is updated - eliminates double clone ## Test Result - Initial checkouts succeeded |
||
|
|
9c0d4114ae |
[CK] Add FP8 KV_BLOCKSCALE support for batch prefill (#4263)
Implement per-page K/V quantization for paged attention: - Add KV_BLOCKSCALE enum to BlockAttentionQuantScaleEnum - Use exp2 shift trick to eliminate explicit P scaling overhead - Prefetch physical pages offset for KV cache, overlaps with computations ## Proposed changes Please describe the motivation behind the pull request, whether it enables a new feature or fixes a bug. If there are associated pull requests or issues, please link them to the pull request. ## Checklist Please put an `x` into the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask. - [ ] I have added tests relevant to the introduced functionality, and the unit tests are passing locally - [ ] I have added the test to REGRESSION_TESTS list defined at the top of CMakeLists.txt in tests/CMakeLists.txt, **IF** the test takes more than 30 seconds to run. - [ ] I have added inline documentation which enables the maintainers with understanding the motivation - [ ] I have removed the stale documentation which is no longer relevant after this pull request - [ ] (If this change is user-facing) I have added release notes which provide the end users with a brief summary of the improvement from this pull request - [ ] I have run `clang-format` on all changed files - [ ] Any dependent changes have been merged ## Discussion If this is a relatively large or complex change, feel free to start a discussion by explaining why you chose the solution you did and what alternatives you considered --- 🔁 Imported from [ROCm/composable_kernel#3696](https://github.com/ROCm/composable_kernel/pull/3696) 🧑💻 Originally authored by @Jeff-Huang --------- Co-authored-by: Jeff Huang <chiachi.huang@amd.com> Co-authored-by: Illia Silin <Illia.Silin@amd.com> |
||
|
|
170d49eb2c |
CK CI migration. (#4310)
## Motivation Enable the CK CI after migration from standalone repo. ## Technical Details Modify the jenkinsfile in projects/composablekernel to update the CI workflow. ## Test Plan This is for CK internal testing only. ## Test Result Set up new CK CI pipeline/dashboard. ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests. --------- Co-authored-by: Andrew Clark <andrew.clark@amd.com> |
||
|
|
82a79cc337 | Merge remote-tracking branch 'origin/develop' into preserved/composablekernel | ||
|
|
db2688820e | Merge commit '421b714f139fda3361eb4d83a3a87fd8cc1cf169' into develop |