Skip to content

rocmPackages_6: bump to 6.3.1 and add more packages#384159

Closed
GZGavinZhao wants to merge 28 commits intoNixOS:masterfrom
GZGavinZhao:gzgz-rocm-update
Closed

rocmPackages_6: bump to 6.3.1 and add more packages#384159
GZGavinZhao wants to merge 28 commits intoNixOS:masterfrom
GZGavinZhao:gzgz-rocm-update

Conversation

@GZGavinZhao
Copy link
Contributor

@GZGavinZhao GZGavinZhao commented Feb 22, 2025

NOTE: if this line is still here, this means this PR may not build yet

Supercedes #367695.

Reworked ROCm LLVM based on #370435. As of 2025-02-22, I don't think the LLVM infrastructure in nixpkgs is mature enough to use it in ROCm (e.g. the difficulty with overriding specific components). Currently, using standalone HIP compiler makes building rocmPackages_6 easier and allows us to use different compilers for C++ and HIP separately. We do want to reuse code in pkgs/development/compilers/llvm in the future though, just not now.

I belive I've hammered out the details of the standalone HIP compiler and I just need to verify it works for all the packages. I'm rebuilding the packages using the standalone HIP compiler one-by-one, making relevant changes to make CMake recognize the HIP compiler and cleaning up existing code on my way.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added 6.topic: python Python is a high-level, general-purpose programming language. 6.topic: rocm ROCm is an Advanced Micro Devices software stack for graphics processing unit programming. labels Feb 22, 2025
@ofborg ofborg bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Feb 22, 2025
@prusnak
Copy link
Member

prusnak commented Feb 22, 2025

Can you fix the eval issue in the CI and merge conflict?

@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Feb 22, 2025
LunNova and others added 22 commits February 22, 2025 18:10
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
…e_mha_operations

`device_mha_operations` are not built in composable_kernel if the requested
GPU targets is not one of `gfx90a`, `gfx94*`, or `gfx95*` according to
[this line](https://github.com/ROCm/composable_kernel/blob/6b6fcd370bb2e5572422a1ca71d261df02b6263e/library/src/tensor_operation_instance/gpu/CMakeLists.txt#L371),
but MIOpen always wants `device_mha_operations`.

To remedy this, just always add `gfx90a` to `gpuTargets`.

Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
…X_BUILD_CORES

Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
@spacekitteh
Copy link
Contributor

Note that 6.3.3 was released a few days ago; version 6.3.2 seems to have fixed an issue w.r.t. hipsparse:
- Fixed the exported hipfort::hipsparse CMake target.

Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
@aviallon
Copy link
Contributor

@GZGavinZhao why has this be closed?

@prusnak
Copy link
Member

prusnak commented Mar 25, 2025

@GZGavinZhao why has this be closed?

because it was obsoleted by #367695 which has been merged

@GZGavinZhao
Copy link
Contributor Author

@aviallon The changes made in this PR may be revisited in the future, but #367695 is more urgent as it contains fixes for broken packages.

@aviallon
Copy link
Contributor

Indeed, thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: python Python is a high-level, general-purpose programming language. 6.topic: rocm ROCm is an Advanced Micro Devices software stack for graphics processing unit programming.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants