Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rocmPackages: 6.0.2 -> 6.3.3, and various ROCm build fixes and new packages #367695

Draft
wants to merge 10 commits into
base: staging
Choose a base branch
from

Conversation

LunNova
Copy link
Member

@LunNova LunNova commented Dec 23, 2024

Fixes #337159
Fixes #383836
Fixes #379354

WIP bump to 6.3 for rocmPackages_6 package set.

Upstream PRs/issues Raised

TODO List

  • Fix rocmcxx GCC prefix
  • Contemplate trying to make a normal Nix style CC wrapper work again instead of this sysroot style mess and then don't because I spent 2 weeks on it already (please someone fix this)
  • Expand GPU targets list for *blas libraries
  • Maybe? expand GPU targets list for CK
    • CK seems to be ~untested on anything other than MI200/MI300 series so might be safer not to
    • Trying this out we can reduce the list if breakage is reported.
  • Hack cuda backend out of triton 3.2 so we can build torch for ROCm without deps on unfree cudart
  • Get compression of offload and msgpack working for hipblaslt. 10GB derivation is not ok.
  • Remove debug info / dontStrip settings
  • Clean up the triton mess in rocm-modules/6/default.nix
  • Turn traces into TODO items in this list
  • Upstream patches
  • Resurrect binary compatibility patches for new COMGR (gfx1036 -> uses gfx1030 if 1036 not available)
    • Confirm patches are working correctly with "new" unbundler path which we have enabled
  • Make use of working LLVM packages .override to simplify LLVM overrideScope isn't present and is needed.
  • Import minimal set of pytorch changes to build with rocm 6.3 from https://github.com/LunNova/ml.nix/blob/main/pytorch-rocm.nix
  • Allow better build parallelism by creating -minimal versions of some of the huge packages built for no gfx arches Too difficult, not doing in this PR
  • Clean up hacks related to build parallelism
  • Document clang-ocl, rocm-thunk going away.
  • Fix migraph packages
  • Remove Tensile parallelism patches
  • Convert in-tree patches to fetchpatch usage where possible

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.

@Shawn8901
Copy link
Contributor

not knowing much about the rocm stack, mainly here as i am using btop with rocm support enabled.

I receive the following error when compiling rocm-smi on a nixpkgs on recent master including this PR.

rocm-smi> [ 24%] Building CXX object oam/CMakeFiles/oam.dir/__/src/rocm_smi_power_mon.cc.o
rocm-smi> [ 27%] Building CXX object oam/CMakeFiles/oam.dir/__/src/rocm_smi_utils.cc.o
rocm-smi> clang++clang++: : warning: warning: -Wl,-z,noexecstack: 'linker' input unused [-Wunused-command-line-argument]-Wl,-z,noexecstack: 'linker' input unused [-Wunused-command-line-argument]
rocm-smi> 
rocm-smi> clang++clang++: : warning: warning: -Wl,-znoexecheap: 'linker' input unused [-Wunused-command-line-argument]-Wl,-znoexecheap: 'linker' input unused [-Wunused-command-line-argument]
rocm-smi> 
rocm-smi> clang++clang++: : warning: warning: -Wl,-z,relro: 'linker' input unused [-Wunused-command-line-argument]-Wl,-z,relro: 'linker' input unused [-Wunused-command-line-argument]
rocm-smi> 
rocm-smi> clang++clang++: : warning: warning: -Wl,-z,now: 'linker' input unused [-Wunused-command-line-argument]-Wl,-z,now: 'linker' input unused [-Wunused-command-line-argument]
rocm-smi> 
rocm-smi> clang++: warning: -Wl,-z,noexecstack: 'linker' input unused [-Wunused-command-line-argument]
rocm-smi> clang++: warning: -Wl,-znoexecheap: 'linker' input unused [-Wunused-command-line-argument]
rocm-smi> clang++: warning: -Wl,-z,relro: 'linker' input unused [-Wunused-command-line-argument]
rocm-smi> clang++: warning: -Wl,-z,now: 'linker' input unused [-Wunused-command-line-argument]
rocm-smi> warning: warning: warning: unknown warning option '-Wtrampolines' [-Wunknown-warning-option]unknown warning option '-Wtrampolines' [-Wunknown-warning-option]unknown warning option '-Wtrampolines' [-Wunknown-warning-option]
rocm-smi> 
rocm-smi> 
rocm-smi> /build/source/src/rocm_smi_power_mon.cc:44:10: fatal error: 'cassert' file not found
rocm-smi>    44 | #include <cassert>
rocm-smi>       |          ^~~~~~~~~
rocm-smi> /build/source/src/rocm_smi_monitor.cc:46:10: fatal error: 'algorithm' file not found
rocm-smi>    46 | #include <algorithm>
rocm-smi>       |          ^~~~~~~~~~~
rocm-smi> /build/source/src/rocm_smi_utils.cc:54:10: fatal error: 'algorithm' file not found
rocm-smi>    54 | #include <algorithm>
rocm-smi>       |          ^~~~~~~~~~~
rocm-smi> 1 warning and 1 error generated.
rocm-smi> make[2]: *** [oam/CMakeFiles/oam.dir/build.make:121: oam/CMakeFiles/oam.dir/__/src/rocm_smi_power_mon.cc.o] Error 1
rocm-smi> 1 warning and 1 error generated.
rocm-smi> make[2]: *** [oam/CMakeFiles/oam.dir/build.make:107: oam/CMakeFiles/oam.dir/__/src/rocm_smi_monitor.cc.o] Error 1
rocm-smi> 1 warning and 1 error generated.
rocm-smi> make[2]: *** [oam/CMakeFiles/oam.dir/build.make:135: oam/CMakeFiles/oam.dir/__/src/rocm_smi_utils.cc.o] Error 1
rocm-smi> make[1]: *** [CMakeFiles/Makefile2:226: oam/CMakeFiles/oam.dir/all] Error 2
rocm-smi> make: *** [Makefile:156: all] Error 2

@LunNova
Copy link
Member Author

LunNova commented Dec 23, 2024

@Shawn8901 Should be fixed now, was broken when I first opened the PR.

@GZGavinZhao
Copy link
Contributor

One thing that I've wanted to do for a long time is to completely remove the ROCm LLVM as an stdEnv, which should solve a lot of these weird compilation errors. Solus's ROCm stack does this, and we compile every non-HIP code with GCC. In this way, the entire ROCm LLVM can be compacted into a single derivation and the complexity of packaging/updating ROCm LLVM is drastically reduced.

That is, you should be able to use just the default stdenv with GCC to compile non-HIP code and tell CMake/HIPCC to use the ROCm LLVM only when compiling HIP code. You can achieve this entirely through environment variables. It doesn't make sense that because a portion of the codebase contains HIP code, any C/C++ in the codebase needs to be compiled with ROCm LLVM's C compiler.

@GZGavinZhao
Copy link
Contributor

Ok I just noticed the "Contemplate trying to make a normal Nix style CC wrapper work again" section, so it seems like you've already experienced the pain of the ROCm LLVM 😅 I will give my idea a try in the next few days and get back.

@LunNova
Copy link
Member Author

LunNova commented Dec 23, 2024

It looks like upstream are moving away from a separate hipcc and using clang (now amdclang++ or amdclang) for the entire build with -x hip --offload-arch ... as extra args for HIP files.

Maintaining a separate HIP only compiler might require maintaining significant cmakefile patches to get it to be used, but if you can work out a way to do this that isn't maintenance hell that's great.

@GZGavinZhao
Copy link
Contributor

Resurrect binary compatibility patches for new COMGR

Please see https://github.com/GZGavinZhao/rocm-llvm-project/commits/solus-rocm-6.2.x for the patches and https://lists.debian.org/debian-ai/2024/12/msg00042.html for more details. I hope they apply cleanly on v6.3, but if not I think the changes are easy enough to manually rewrite them.

If you need patches for other components, please see https://github.com/GZGavinZhao/<component-name>/commits/solus-rocm-6.2.x. Every patch there is used by Solus's ROCm 6.2 stack. For example, for rocm-clr, that would be https://github.com/GZGavinZhao/clr/commits/solus-rocm-6.2.x. IIRC the components that require ISA compatibility patches are Comgr, clr, and rocBLAS.

@GZGavinZhao
Copy link
Contributor

Maintaining a separate HIP only compiler might require maintaining significant cmakefile patches to get it to be used, but if you can work out a way to do this that isn't maintenance hell that's great.

Solus does this and we didn't have to use any patches. Most of the work done was figuring out the environment variables to tell CMake and/or HIPCC what our intended HIP compiler is. The only thing I'm worrying about is locating sysroots due to non-standard installation prefix, but other than that Solus's experience shows that this is definitely doable.

@LunNova
Copy link
Member Author

LunNova commented Dec 24, 2024

This should be testable (including torch) if you have an instinct MI50 or newer, Radeon VII, W/RX 6800 or similar, W/RX 78/900 or similar.

Cards which relied on the ISA compat patches like iGPUs or 66/7xx aren't going to work, haven't applied @GZGavinZhao's updated patches yet.

If you're going to try to test it you want >200G free space so hipblaslt can spew an unfathomable amount of asm into the build temp directory and a lot of cores or you'll be here all month.

@henryrgithub
Copy link

henryrgithub commented Dec 24, 2024

I'm having trouble getting this to build. I get

Failed Tests (2):
MLIR :: Dialect/SPIRV/IR/availability.mlir
MLIR :: Dialect/SPIRV/IR/target-env.mlir

during the triton-llvm-19.1.0-rc1 test phase. RX6800XT. X86_64-linux on nixos. No overlays or config or anything, just trying to create a devshell with python312Packages.torch. I can post a (nearly) minimum reproducible flake:

{
  description = "Rocm 6 py312 torch";

  inputs.nixpkgs.url = "github:LunNova/nixpkgs/rocm-update";

  outputs = { self, nixpkgs }:
    let
      supportedSystems = [ "x86_64-linux" ];
      forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f {
        pkgs = import nixpkgs {
          inherit system;
        };
      });
    in
    {
      devShells = forEachSupportedSystem ({ pkgs }: {
        default =
        let
          pythonPackages = pkgs.python312Packages;
        in
        pkgs.mkShell {
          venvDir = ".venv";
          packages = with pkgs; [
          ] ++
          (with pythonPackages; [
            torch
          ])
          ;
        };
      });
    };
}

@LunNova
Copy link
Member Author

LunNova commented Dec 24, 2024

@henryrgithub Your test flake is using non-rocm torch which is broken in master with the same error.

$ nix build github:nixos/nixpkgs/master#python3Packages.torch
error: build of '/nix/store/40cl85gc0qvrby080zn1wcwi86hgqm9s-triton-llvm-19.1.0-rc1.drv' failed: builder for '/nix/store/40cl85gc0qvrby080zn1wcwi86hgqm9s-triton-llvm-19.1.0-rc1.drv' failed with exit code 1;
       > Failed Tests (2):
       >   MLIR :: Dialect/SPIRV/IR/availability.mlir
       >   MLIR :: Dialect/SPIRV/IR/target-env.mlir
       >
       >
       > Testing Time: 59.50s
       >
       > Total Discovered Tests: 62430
       >   Skipped          :   336 (0.54%)
       >   Unsupported      : 23826 (38.16%)
       >   Passed           : 38198 (61.19%)
       >   Expectedly Failed:    68 (0.11%)
       >   Failed           :     2 (0.00%)
       > FAILED: CMakeFiles/check-all /build/source/llvm/build/CMakeFiles/check-all

If you use torchWithRocm it should succeed on this PR branch because I turned off the test phase in the triton-llvm it depends on. Don't know why it's failing.

buildTests = false; # FIXME: why are tests failing?

Recommend updating inputs before starting a build of torchWithRocm, just fixed some issues.

@LunNova
Copy link
Member Author

LunNova commented Dec 24, 2024

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 367695


x86_64-linux

⏩ 122 packages marked as broken and skipped:
  • khoj
  • khoj.dist
  • piper-train
  • piper-train.dist
  • private-gpt
  • private-gpt.dist
  • python312Packages.causal-conv1d
  • python312Packages.causal-conv1d.dist
  • python312Packages.dalle-mini
  • python312Packages.dalle-mini.dist
  • python312Packages.elegy
  • python312Packages.elegy.dist
  • python312Packages.fastai
  • python312Packages.fastai.dist
  • python312Packages.haystack-ai
  • python312Packages.haystack-ai.dist
  • python312Packages.k-diffusion
  • python312Packages.k-diffusion.dist
  • python312Packages.llama-index
  • python312Packages.llama-index-agent-openai
  • python312Packages.llama-index-agent-openai.dist
  • python312Packages.llama-index-cli
  • python312Packages.llama-index-cli.dist
  • python312Packages.llama-index-core
  • python312Packages.llama-index-core.dist
  • python312Packages.llama-index-embeddings-gemini
  • python312Packages.llama-index-embeddings-gemini.dist
  • python312Packages.llama-index-embeddings-google
  • python312Packages.llama-index-embeddings-google.dist
  • python312Packages.llama-index-embeddings-huggingface
  • python312Packages.llama-index-embeddings-huggingface.dist
  • python312Packages.llama-index-embeddings-ollama
  • python312Packages.llama-index-embeddings-ollama.dist
  • python312Packages.llama-index-embeddings-openai
  • python312Packages.llama-index-embeddings-openai.dist
  • python312Packages.llama-index-graph-stores-nebula
  • python312Packages.llama-index-graph-stores-nebula.dist
  • python312Packages.llama-index-graph-stores-neo4j
  • python312Packages.llama-index-graph-stores-neo4j.dist
  • python312Packages.llama-index-graph-stores-neptune
  • python312Packages.llama-index-graph-stores-neptune.dist
  • python312Packages.llama-index-indices-managed-llama-cloud
  • python312Packages.llama-index-indices-managed-llama-cloud.dist
  • python312Packages.llama-index-legacy
  • python312Packages.llama-index-legacy.dist
  • python312Packages.llama-index-llms-ollama
  • python312Packages.llama-index-llms-ollama.dist
  • python312Packages.llama-index-llms-openai
  • python312Packages.llama-index-llms-openai-like
  • python312Packages.llama-index-llms-openai-like.dist
  • python312Packages.llama-index-llms-openai.dist
  • python312Packages.llama-index-multi-modal-llms-openai
  • python312Packages.llama-index-multi-modal-llms-openai.dist
  • python312Packages.llama-index-program-openai
  • python312Packages.llama-index-program-openai.dist
  • python312Packages.llama-index-question-gen-openai
  • python312Packages.llama-index-question-gen-openai.dist
  • python312Packages.llama-index-readers-database
  • python312Packages.llama-index-readers-database.dist
  • python312Packages.llama-index-readers-file
  • python312Packages.llama-index-readers-file.dist
  • python312Packages.llama-index-readers-json
  • python312Packages.llama-index-readers-json.dist
  • python312Packages.llama-index-readers-llama-parse
  • python312Packages.llama-index-readers-llama-parse.dist
  • python312Packages.llama-index-readers-s3
  • python312Packages.llama-index-readers-s3.dist
  • python312Packages.llama-index-readers-twitter
  • python312Packages.llama-index-readers-twitter.dist
  • python312Packages.llama-index-readers-txtai
  • python312Packages.llama-index-readers-txtai.dist
  • python312Packages.llama-index-readers-weather
  • python312Packages.llama-index-readers-weather.dist
  • python312Packages.llama-index-vector-stores-chroma
  • python312Packages.llama-index-vector-stores-chroma.dist
  • python312Packages.llama-index-vector-stores-google
  • python312Packages.llama-index-vector-stores-google.dist
  • python312Packages.llama-index-vector-stores-postgres
  • python312Packages.llama-index-vector-stores-postgres.dist
  • python312Packages.llama-index-vector-stores-qdrant
  • python312Packages.llama-index-vector-stores-qdrant.dist
  • python312Packages.llama-index.dist
  • python312Packages.llama-parse
  • python312Packages.llama-parse.dist
  • python312Packages.mamba-ssm
  • python312Packages.mamba-ssm.dist
  • python312Packages.objax
  • python312Packages.objax.dist
  • python312Packages.pettingzoo
  • python312Packages.pettingzoo.dist
  • python312Packages.private-gpt
  • python312Packages.private-gpt.dist
  • python312Packages.rlcard
  • python312Packages.rlcard.dist
  • python312Packages.shimmy
  • python312Packages.shimmy.dist
  • python312Packages.skrl
  • python312Packages.skrl.dist
  • python312Packages.spacy
  • python312Packages.spacy-loggers
  • python312Packages.spacy-loggers.dist
  • python312Packages.spacy-lookups-data
  • python312Packages.spacy-lookups-data.dist
  • python312Packages.spacy-transformers
  • python312Packages.spacy-transformers.dist
  • python312Packages.spacy.dist
  • python312Packages.textacy
  • python312Packages.textacy.dist
  • python312Packages.textnets
  • python312Packages.textnets.dist
  • python312Packages.tf2onnx
  • python312Packages.tf2onnx.dist
  • python312Packages.treex
  • python312Packages.treex.dist
  • python312Packages.vllm
  • python312Packages.vllm.dist
  • python312Packages.wandb
  • python312Packages.wandb.dist
  • rocmPackages.migraphx
  • rocmPackages.mivisionx
  • rocmPackages.mivisionx-cpu
  • rocmPackages.mivisionx-hip
❌ 465 packages failed to build:
  • backgroundremover
  • backgroundremover.dist
  • beets
  • beets-unstable
  • beets-unstable.dist
  • beets-unstable.doc
  • beets-unstable.man
  • beets.dist
  • beets.doc
  • beets.man
  • easyocr (python312Packages.easyocr)
  • easyocr.dist (python312Packages.easyocr.dist)
  • exo
  • exo.dist
  • immich-machine-learning
  • immich-machine-learning.dist
  • lacus
  • lacus.dist
  • libretranslate (python312Packages.libretranslate)
  • libretranslate.dist (python312Packages.libretranslate.dist)
  • minari (python312Packages.minari)
  • minari.dist (python312Packages.minari.dist)
  • mokuro
  • mokuro.dist
  • ollama-rocm
  • open-webui
  • open-webui.dist
  • openai-whisper (python312Packages.openai-whisper)
  • openai-whisper.dist (python312Packages.openai-whisper.dist)
  • openllm
  • openllm.dist
  • opensplat
  • opensplatWithCuda
  • pianotrans
  • pianotrans.dist
  • pitivi
  • python312Packages.accelerate
  • python312Packages.accelerate.dist
  • python312Packages.albumentations
  • python312Packages.albumentations.dist
  • python312Packages.ale-py
  • python312Packages.ale-py.dist
  • python312Packages.apptools
  • python312Packages.apptools.dist
  • python312Packages.apricot-select
  • python312Packages.apricot-select.dist
  • python312Packages.argos-translate-files
  • python312Packages.argos-translate-files.dist
  • python312Packages.argostranslate
  • python312Packages.argostranslate.dist
  • python312Packages.array-api-compat
  • python312Packages.array-api-compat.dist
  • python312Packages.arviz
  • python312Packages.arviz.dist
  • python312Packages.asteroid-filterbanks
  • python312Packages.asteroid-filterbanks.dist
  • python312Packages.atomman
  • python312Packages.atomman.dist
  • python312Packages.attacut
  • python312Packages.attacut.dist
  • python312Packages.ax-platform
  • python312Packages.ax-platform.dist
  • python312Packages.bambi
  • python312Packages.bambi.dist
  • python312Packages.bitsandbytes
  • python312Packages.bitsandbytes.dist
  • python312Packages.blosc2
  • python312Packages.blosc2.dist
  • python312Packages.boost-histogram
  • python312Packages.boost-histogram.dist
  • python312Packages.botorch
  • python312Packages.botorch.dist
  • python312Packages.captum
  • python312Packages.captum.dist
  • python312Packages.clean-fid
  • python312Packages.clean-fid.dist
  • python312Packages.cleanlab
  • python312Packages.cleanlab.dist
  • python312Packages.cleanvision
  • python312Packages.cleanvision.dist
  • python312Packages.clip
  • python312Packages.clip-anytorch
  • python312Packages.clip-anytorch.dist
  • python312Packages.clip.dist
  • python312Packages.coffea
  • python312Packages.coffea.dist
  • python312Packages.colbert-ai
  • python312Packages.colbert-ai.dist
  • python312Packages.compressai
  • python312Packages.compressai.dist
  • python312Packages.corner
  • python312Packages.corner.dist
  • python312Packages.ctranslate2
  • python312Packages.ctranslate2.dist
  • python312Packages.dask-awkward
  • python312Packages.dask-awkward.dist
  • python312Packages.dask-histogram
  • python312Packages.dask-histogram.dist
  • python312Packages.dctorch
  • python312Packages.dctorch.dist
  • python312Packages.deepdish
  • python312Packages.deepdish.dist
  • python312Packages.deepface
  • python312Packages.deepface.dist
  • python312Packages.deepwave
  • python312Packages.deepwave.dist
  • python312Packages.detectron2
  • python312Packages.detectron2.dist
  • python312Packages.diffusers
  • python312Packages.diffusers.dist
  • python312Packages.distrax
  • python312Packages.distrax.dist
  • python312Packages.docling-ibm-models
  • python312Packages.docling-ibm-models.dist
  • python312Packages.edward
  • python312Packages.edward.dist
  • python312Packages.effdet
  • python312Packages.effdet.dist
  • python312Packages.envisage
  • python312Packages.envisage.dist
  • python312Packages.evosax
  • python312Packages.evosax.dist
  • python312Packages.experiment-utilities
  • python312Packages.experiment-utilities.dist
  • python312Packages.ezyrb
  • python312Packages.ezyrb.dist
  • python312Packages.facenet-pytorch
  • python312Packages.facenet-pytorch.dist
  • python312Packages.fairscale
  • python312Packages.fairscale.dist
  • python312Packages.fairseq
  • python312Packages.fairseq.dist
  • python312Packages.faster-whisper
  • python312Packages.faster-whisper.dist
  • python312Packages.fickling
  • python312Packages.fickling.dist
  • python312Packages.finetuning-scheduler
  • python312Packages.finetuning-scheduler.dist
  • python312Packages.flammkuchen
  • python312Packages.flammkuchen.dist
  • python312Packages.flax
  • python312Packages.flax.dist
  • python312Packages.flowmc
  • python312Packages.flowmc.dist
  • python312Packages.flyingsquid
  • python312Packages.flyingsquid.dist
  • python312Packages.funsor
  • python312Packages.funsor.dist
  • python312Packages.fvcore
  • python312Packages.fvcore.dist
  • python312Packages.gpytorch
  • python312Packages.gpytorch.dist
  • python312Packages.grad-cam
  • python312Packages.grad-cam.dist
  • python312Packages.gradio
  • python312Packages.gradio-client
  • python312Packages.gradio-client.dist
  • python312Packages.gradio-pdf
  • python312Packages.gradio-pdf.dist
  • python312Packages.gradio.dist
  • python312Packages.graphtage
  • python312Packages.graphtage.dist
  • python312Packages.guidance
  • python312Packages.guidance.dist
  • python312Packages.gymnasium
  • python312Packages.gymnasium.dist
  • python312Packages.hist
  • python312Packages.hist.dist
  • python312Packages.ignite
  • python312Packages.ignite.dist
  • python312Packages.imagededup
  • python312Packages.imagededup.dist
  • python312Packages.imgcat
  • python312Packages.imgcat.dist
  • python312Packages.insightface
  • python312Packages.insightface.dist
  • python312Packages.invisible-watermark
  • python312Packages.invisible-watermark.dist
  • python312Packages.iopath
  • python312Packages.iopath.dist
  • python312Packages.islpy
  • python312Packages.islpy.dist
  • python312Packages.julius
  • python312Packages.julius.dist
  • python312Packages.keras
  • python312Packages.keras.dist
  • python312Packages.kornia
  • python312Packages.kornia.dist
  • python312Packages.lacuscore
  • python312Packages.lacuscore.dist
  • python312Packages.lancedb
  • python312Packages.lancedb.dist
  • python312Packages.langchain-huggingface
  • python312Packages.langchain-huggingface.dist
  • python312Packages.layoutparser
  • python312Packages.layoutparser.dist
  • python312Packages.librosa
  • python312Packages.librosa.dist
  • python312Packages.linear-operator
  • python312Packages.linear-operator.dist
  • python312Packages.lion-pytorch
  • python312Packages.lion-pytorch.dist
  • python312Packages.loopy
  • python312Packages.loopy.dist
  • python312Packages.manga-ocr
  • python312Packages.manga-ocr.dist
  • python312Packages.manifest-ml
  • python312Packages.manifest-ml.dist
  • python312Packages.manifold3d
  • python312Packages.manifold3d.dist
  • python312Packages.markitdown
  • python312Packages.markitdown.dist
  • python312Packages.mayavi
  • python312Packages.mayavi.dist
  • python312Packages.mdtraj
  • python312Packages.mdtraj.dist
  • python312Packages.mhcflurry
  • python312Packages.mhcflurry.dist
  • python312Packages.mmcv
  • python312Packages.mmcv.dist
  • python312Packages.mmengine
  • python312Packages.mmengine.dist
  • python312Packages.monai
  • python312Packages.monai.dist
  • python312Packages.monotonic-alignment-search
  • python312Packages.monotonic-alignment-search.dist
  • python312Packages.monty
  • python312Packages.monty.dist
  • python312Packages.mplhep
  • python312Packages.mplhep.dist
  • python312Packages.mtcnn
  • python312Packages.mtcnn.dist
  • python312Packages.nanobind
  • python312Packages.nanobind.dist
  • python312Packages.nianet
  • python312Packages.nianet.dist
  • python312Packages.numpyro
  • python312Packages.numpyro.dist
  • python312Packages.nutpie
  • python312Packages.nutpie.dist
  • python312Packages.open-clip-torch
  • python312Packages.open-clip-torch.dist
  • python312Packages.optimum
  • python312Packages.optimum.dist
  • python312Packages.optuna
  • python312Packages.optuna.dist
  • python312Packages.oryx
  • python312Packages.oryx.dist
  • python312Packages.outlines
  • python312Packages.outlines.dist
  • python312Packages.pandantic
  • python312Packages.pandantic.dist
  • python312Packages.pandas-stubs
  • python312Packages.pandas-stubs.dist
  • python312Packages.pdfplumber
  • python312Packages.pdfplumber.dist
  • python312Packages.peft
  • python312Packages.peft.dist
  • python312Packages.pgmpy
  • python312Packages.pgmpy.dist
  • python312Packages.phonopy
  • python312Packages.phonopy.dist
  • python312Packages.piano-transcription-inference
  • python312Packages.piano-transcription-inference.dist
  • python312Packages.pyannote-audio
  • python312Packages.pyannote-audio.dist
  • python312Packages.pyannote-pipeline
  • python312Packages.pyannote-pipeline.dist
  • python312Packages.pydmd
  • python312Packages.pydmd.dist
  • python312Packages.pylance
  • python312Packages.pylance.dist
  • python312Packages.pymanopt
  • python312Packages.pymanopt.dist
  • python312Packages.pymatgen
  • python312Packages.pymatgen.dist
  • python312Packages.pymc
  • python312Packages.pymc.dist
  • python312Packages.pyopencl
  • python312Packages.pyopencl.dist
  • python312Packages.pyro-ppl
  • python312Packages.pyro-ppl.dist
  • python312Packages.pytensor
  • python312Packages.pytensor.dist
  • python312Packages.pytorch-bench
  • python312Packages.pytorch-bench.dist
  • python312Packages.pytorch-lightning
  • python312Packages.pytorch-lightning.dist
  • python312Packages.pytorch-metric-learning
  • python312Packages.pytorch-metric-learning.dist
  • python312Packages.pytorch-msssim
  • python312Packages.pytorch-msssim.dist
  • python312Packages.pytorch-pfn-extras
  • python312Packages.pytorch-pfn-extras.dist
  • python312Packages.pytorch3d
  • python312Packages.pytorch3d.dist
  • python312Packages.reikna
  • python312Packages.reikna.dist
  • python312Packages.rerun-sdk
  • python312Packages.rerun-sdk.dist
  • python312Packages.resize-right
  • python312Packages.resize-right.dist
  • python312Packages.retinaface
  • python312Packages.retinaface.dist
  • python312Packages.rising
  • python312Packages.rising.dist
  • python312Packages.rlax
  • python312Packages.rlax.dist
  • python312Packages.roma
  • python312Packages.roma.dist
  • python312Packages.rotary-embedding-torch
  • python312Packages.rotary-embedding-torch.dist
  • python312Packages.safetensors
  • python312Packages.safetensors.dist
  • python312Packages.sentence-transformers
  • python312Packages.sentence-transformers.dist
  • python312Packages.sfepy
  • python312Packages.sfepy.dist
  • python312Packages.shap
  • python312Packages.shap.dist
  • python312Packages.skorch
  • python312Packages.skorch.dist
  • python312Packages.slicer
  • python312Packages.slicer.dist
  • python312Packages.snorkel
  • python312Packages.snorkel.dist
  • python312Packages.soxr
  • python312Packages.soxr.dist
  • python312Packages.speechbrain
  • python312Packages.speechbrain.dist
  • python312Packages.speechrecognition
  • python312Packages.speechrecognition.dist
  • python312Packages.stable-baselines3
  • python312Packages.stable-baselines3.dist
  • python312Packages.stanza
  • python312Packages.stanza.dist
  • python312Packages.stytra
  • python312Packages.stytra.dist
  • python312Packages.sumo
  • python312Packages.sumo.dist
  • python312Packages.tables
  • python312Packages.tables.dist
  • python312Packages.tensorboardx
  • python312Packages.tensorboardx.dist
  • python312Packages.tensordict
  • python312Packages.tensordict.dist
  • python312Packages.tensorflow-probability
  • python312Packages.tensorflow-probability.dist
  • python312Packages.test-tube
  • python312Packages.test-tube.dist
  • python312Packages.timm
  • python312Packages.timm.dist
  • python312Packages.tiny-cuda-nn
  • python312Packages.tinygrad
  • python312Packages.tinygrad.dist
  • python312Packages.torch (python312Packages.torchWithoutCuda ,python312Packages.torchWithoutRocm)
  • python312Packages.torch-audiomentations
  • python312Packages.torch-audiomentations.dist
  • python312Packages.torch-geometric
  • python312Packages.torch-geometric.dist
  • python312Packages.torch-pitch-shift
  • python312Packages.torch-pitch-shift.dist
  • python312Packages.torch-tb-profiler
  • python312Packages.torch-tb-profiler.dist
  • python312Packages.torch.cxxdev (python312Packages.torchWithoutCuda.cxxdev ,python312Packages.torchWithoutRocm.cxxdev)
  • python312Packages.torch.dev (python312Packages.torchWithoutCuda.dev ,python312Packages.torchWithoutRocm.dev)
  • python312Packages.torch.dist (python312Packages.torchWithoutCuda.dist ,python312Packages.torchWithoutRocm.dist)
  • python312Packages.torch.lib (python312Packages.torchWithoutCuda.lib ,python312Packages.torchWithoutRocm.lib)
  • python312Packages.torchWithCuda
  • python312Packages.torchWithCuda.cxxdev
  • python312Packages.torchWithCuda.dev
  • python312Packages.torchWithCuda.dist
  • python312Packages.torchWithCuda.lib
  • python312Packages.torchWithVulkan
  • python312Packages.torchWithVulkan.cxxdev
  • python312Packages.torchWithVulkan.dev
  • python312Packages.torchWithVulkan.dist
  • python312Packages.torchWithVulkan.lib
  • python312Packages.torchaudio
  • python312Packages.torchaudio.dist
  • python312Packages.torchbench
  • python312Packages.torchbench.dist
  • python312Packages.torchcrepe
  • python312Packages.torchcrepe.dist
  • python312Packages.torchdiffeq
  • python312Packages.torchdiffeq.dist
  • python312Packages.torchinfo
  • python312Packages.torchinfo.dist
  • python312Packages.torchio
  • python312Packages.torchio.dist
  • python312Packages.torchlibrosa
  • python312Packages.torchlibrosa.dist
  • python312Packages.torchmetrics
  • python312Packages.torchmetrics.dist
  • python312Packages.torchprofile
  • python312Packages.torchprofile.dist
  • python312Packages.torchrl
  • python312Packages.torchrl.dist
  • python312Packages.torchsde
  • python312Packages.torchsde.dist
  • python312Packages.torchsnapshot
  • python312Packages.torchsnapshot.dist
  • python312Packages.torchsummary
  • python312Packages.torchsummary.dist
  • python312Packages.torchtnt
  • python312Packages.torchtnt.dist
  • python312Packages.torchvision
  • python312Packages.torchvision.dist
  • python312Packages.trainer
  • python312Packages.trainer.dist
  • python312Packages.transformers
  • python312Packages.transformers.dist
  • python312Packages.translatehtml
  • python312Packages.translatehtml.dist
  • python312Packages.treescope
  • python312Packages.treescope.dist
  • python312Packages.ttach
  • python312Packages.ttach.dist
  • python312Packages.txtai
  • python312Packages.txtai.dist
  • python312Packages.unstructured-inference
  • python312Packages.unstructured-inference.dist
  • python312Packages.vector
  • python312Packages.vector.dist
  • python312Packages.vqgan-jax
  • python312Packages.vqgan-jax.dist
  • python312Packages.webdataset
  • python312Packages.webdataset.dist
  • python312Packages.x-transformers
  • python312Packages.x-transformers.dist
  • python312Packages.xformers
  • python312Packages.xformers.dist
  • rclip
  • rclip.dist
  • rocmPackages.hsa-amd-aqlprofile-bin
  • rocmPackages.llvm.clang-unwrapped-orig
  • rocmPackages.llvm.clang-unwrapped-orig.dev
  • rocmPackages.llvm.clang-unwrapped-orig.lib
  • rocmPackages.llvm.clang-unwrapped-orig.python
  • rocmPackages.llvm.old-llvm
  • rocmPackages.llvm.old-llvm.dev
  • rocmPackages.llvm.old-llvm.lib
  • rocmPackages.llvm.old-llvm.python
  • rocmPackages.rccl-tests
  • rocmPackages.rccl-tests.test
  • rocmPackages.rdc
  • rocmPackages.rdc.doc
  • rocmPackages.rocgdb
  • rocmPackages.rpp-opencl
  • rocmPackages_5.mivisionx (rocmPackages_5.mivisionx-hip)
  • rocmPackages_5.mivisionx-cpu
  • rocmPackages_5.mivisionx-opencl
  • tocpdf
  • tocpdf.dist
  • unstructured-api
  • voicevox
  • voicevox-engine
  • voicevox-engine.dist
  • whisper-ctranslate2
  • whisper-ctranslate2.dist
  • witnessme
  • witnessme.dist
  • wyoming-faster-whisper
  • wyoming-faster-whisper.dist
  • zluda
✅ 104 packages built:
  • blender-hip
  • btop-rocm
  • python312Packages.torch-no-triton
  • python312Packages.torch-no-triton.cxxdev
  • python312Packages.torch-no-triton.dev
  • python312Packages.torch-no-triton.dist
  • python312Packages.torch-no-triton.lib
  • python312Packages.torchWithRocm
  • python312Packages.torchWithRocm.cxxdev
  • python312Packages.torchWithRocm.dev
  • python312Packages.torchWithRocm.dist
  • python312Packages.torchWithRocm.lib
  • rocmPackages.amdsmi
  • rocmPackages.aotriton
  • rocmPackages.ck4inductor
  • rocmPackages.ck4inductor.dist
  • rocmPackages.clang
  • rocmPackages.clr
  • rocmPackages.clr.icd
  • rocmPackages.composable_kernel
  • rocmPackages.composable_kernel_build
  • rocmPackages.half
  • rocmPackages.hip-common
  • rocmPackages.hipblas
  • rocmPackages.hipblas-common
  • rocmPackages.hipblaslt
  • rocmPackages.hipcc
  • rocmPackages.hipcub
  • rocmPackages.hipfft
  • rocmPackages.hipfort
  • rocmPackages.hipify
  • rocmPackages.hiprand
  • rocmPackages.hipsolver
  • rocmPackages.hipsparse
  • rocmPackages.libffi
  • rocmPackages.libffi.dev
  • rocmPackages.libffi.info
  • rocmPackages.libffi.man
  • rocmPackages.llvm.bintools
  • rocmPackages.llvm.clang-tools
  • rocmPackages.llvm.clang-unwrapped
  • rocmPackages.llvm.clang-unwrapped.dev
  • rocmPackages.llvm.clang-unwrapped.lib
  • rocmPackages.llvm.clang-unwrapped.python
  • rocmPackages.llvm.compiler-rt
  • rocmPackages.llvm.compiler-rt.dev
  • rocmPackages.llvm.gcc-prefix
  • rocmPackages.llvm.libcxx
  • rocmPackages.llvm.libcxx.dev
  • rocmPackages.llvm.libunwind
  • rocmPackages.llvm.libunwind.dev
  • rocmPackages.llvm.lld
  • rocmPackages.llvm.lld.dev
  • rocmPackages.llvm.lld.lib
  • rocmPackages.llvm.llvm
  • rocmPackages.llvm.llvm-ref-test
  • rocmPackages.llvm.llvm.dev
  • rocmPackages.llvm.llvm.lib
  • rocmPackages.llvm.llvm.python
  • rocmPackages.llvm.openmp
  • rocmPackages.llvm.openmp.dev
  • rocmPackages.llvm.rocm-merged-llvm
  • rocmPackages.llvm.rocmClangStdenv
  • rocmPackages.miopen
  • rocmPackages.mpi
  • rocmPackages.mpi.dev
  • rocmPackages.mpi.man
  • rocmPackages.mscclpp
  • rocmPackages.rccl
  • rocmPackages.rocalution
  • rocmPackages.rocblas
  • rocmPackages.rocdbgapi
  • rocmPackages.rocdbgapi.doc
  • rocmPackages.rocfft
  • rocmPackages.rocm-cmake
  • rocmPackages.rocm-comgr
  • rocmPackages.rocm-core
  • rocmPackages.rocm-device-libs
  • rocmPackages.rocm-docs-core
  • rocmPackages.rocm-docs-core.dist
  • rocmPackages.rocm-runtime
  • rocmPackages.rocm-smi
  • rocmPackages.rocmPath
  • rocmPackages.rocminfo
  • rocmPackages.rocmlir
  • rocmPackages.rocprim
  • rocmPackages.rocprofiler
  • rocmPackages.rocprofiler-register
  • rocmPackages.rocr-debug-agent
  • rocmPackages.rocrand
  • rocmPackages.rocsolver
  • rocmPackages.rocsparse
  • rocmPackages.rocthrust
  • rocmPackages.roctracer
  • rocmPackages.rocwmma
  • rocmPackages.rpp (rocmPackages.rpp-hip)
  • rocmPackages.rpp-cpu
  • rocmPackages.tensile
  • rocmPackages.tensile.dist
  • rocmPackages.triton
  • rocmPackages.triton-llvm
  • rocmPackages.triton-llvm.doc
  • rocmPackages.triton-llvm.man
  • rocmPackages.triton.dist

@LunNova
Copy link
Member Author

LunNova commented Dec 25, 2024

A lot of the nixpkgs-review failures are torchWithCuda / triton-llvm related. Issues for that: #363965 #367784

};

rocm-opencl-runtime = symlinkJoin {
name = "rocm-opencl-runtime-meta";
# FIXME: we have compressed code objects now, may be able to skip two stages?
Copy link
Contributor

@GZGavinZhao GZGavinZhao Dec 25, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CCOB (compressed code object bundle) is on by default for composable_kernel for ROCm v6.2+, so yes no need for two-stage builds now.

@alapshin
Copy link
Contributor

I tried to use this PR via overlay

rocmPackages = inputs.nixpkgs-rocm.legacyPackages."${final.system}".rocmPackages;

But got a collision when building ollama

    ollama = {
      enable = true;
      acceleration = "rocm";
      rocmOverrideGfx = "10.3.0";
    };
error: builder for '/nix/store/56lg7l3hbwvyf9b026xdyk0zrf24fyw8-rocm-path.drv' failed with exit code 25;
       last 1 log lines:
       > error: collision between `/nix/store/iyc18np8p0c4abw3xq0h65f0qil3qjp7-rocm-clang/llvm/bin/ld.lld' and `/nix/store/wxpnkzvsydgnybkknkipjcdp0pd1m05i-clr-6.3.1/llvm/bin/ld.lld'

But overall it seems to be building without errors. When not using ollama I was able to rebuild my system without errors.

@GZGavinZhao
Copy link
Contributor

I got a separate HIP compiler working and successfully compiled rocsparse (because it's the quickest one to build 😅). Currently, this compiler still uses the GCC toolchains (e.g. glibc and libstdc++). Ideally I want it to use the LLVM toolchains (llvm-libc, compiler-rt, and libc++) so it's fully self-contained and eliminates the chance of clashing with whatever stdenv derivations choose to use, so I'm working on that. This should hopefully resolve the llama-cpp clashing error @alapshin mentioned.

@LunNova
Copy link
Member Author

LunNova commented Dec 26, 2024

ROCm's standard toolchain is clang + GNU libs including libstdc++. There are a few packages which don't compile with libc++ without patches
hipblaslt will fail with llvm/llvm-project#98734 - no PR raised to workaround
rocmlir will fail due to a missing const on operator<, PR raised to fix ROCm/rocMLIR#1708

Clashing error is because I added a /llvm link to clr for use by other ROCm packages and ollama also already adds one to its ROCm env internally, can be resolved by dropping the /llvm link from ollama.

@LunNova
Copy link
Member Author

LunNova commented Dec 26, 2024

ollama fix is at https://github.com/NixOS/nixpkgs/pull/367695/files#diff-99616cb74ed708e718f689a9fc8f62999fdff6164590233bbb1a81a0f8f8c08bL71-L82

@LunNova
Copy link
Member Author

LunNova commented Dec 26, 2024

Added exact GPU targets as pkgs.rocmPackages_6.gfx908, gfx1030 etc.
It's possible to replace rocmPackages_6 with one of these more specific package sets in an overlay.
Should help reduce times for rebuilds while testing changes or targeting a specific device.
Haven't worked out a way to compose (rocblas that supports all gfx) from (multiple rocblases that support different gfx), so there isn't anything super fancy going on with these they're just setting GPU_TARGETS or equivalent.

@LunNova
Copy link
Member Author

LunNova commented Feb 28, 2025

I think the remaining failures aren't newly broken comparing with master. Old magma versions are broken due to rocm 5 clr failing, dbx is broken due to a pydantic version mismatch, pymc has a source hash mismatch.

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 367695 --checkout commit --skip-package-regex python313Packages.*


x86_64-linux

⏩ 32 packages marked as broken and skipped:
  • khoj
  • khoj.dist
  • magma-cuda
  • magma-cuda.test
  • piper-train
  • piper-train.dist
  • python312Packages.causal-conv1d
  • python312Packages.causal-conv1d.dist
  • python312Packages.elegy
  • python312Packages.elegy.dist
  • python312Packages.haystack-ai
  • python312Packages.haystack-ai.dist
  • python312Packages.mamba-ssm
  • python312Packages.mamba-ssm.dist
  • python312Packages.objax
  • python312Packages.objax.dist
  • python312Packages.tf2onnx
  • python312Packages.tf2onnx.dist
  • python312Packages.torchrl
  • python312Packages.torchrl.dist
  • python312Packages.treex
  • python312Packages.treex.dist
  • python312Packages.vllm
  • python312Packages.vllm.dist
  • rocmPackages.rpp-opencl
  • rocmPackages_5.mivisionx
  • rocmPackages_5.mivisionx-cpu
  • rocmPackages_5.mivisionx-hip
  • rocmPackages_5.mivisionx-opencl
  • rocmPackages_6.rpp-opencl
  • vllm
  • vllm.dist
❌ 22 packages failed to build:
  • dbx
  • dbx.dist
  • magma_2_6_2
  • magma_2_6_2.test
  • magma_2_7_2
  • magma_2_7_2.test
  • python312Packages.bambi
  • python312Packages.bambi.dist
  • python312Packages.cleanlab
  • python312Packages.cleanlab.dist
  • python312Packages.ezyrb
  • python312Packages.ezyrb.dist
  • python312Packages.nutpie
  • python312Packages.nutpie.dist
  • python312Packages.pydmd
  • python312Packages.pydmd.dist
  • python312Packages.pymc
  • python312Packages.pymc.dist
  • python312Packages.tiny-cuda-nn
  • python312Packages.x-transformers
  • python312Packages.x-transformers.dist
  • zluda
✅ 688 packages built:
  • adaptivecpp
  • adaptivecppWithCuda
  • adaptivecppWithRocm
  • backgroundremover
  • backgroundremover.dist
  • beets (beetsPackages.beets, beetsPackages.beets-stable)
  • beets-unstable (beetsPackages.beets-unstable)
  • beets-unstable.dist (beetsPackages.beets-unstable.dist)
  • beets-unstable.doc (beetsPackages.beets-unstable.doc)
  • beets-unstable.man (beetsPackages.beets-unstable.man)
  • beets.dist (beetsPackages.beets-stable.dist, beetsPackages.beets.dist)
  • beets.doc (beetsPackages.beets-stable.doc, beetsPackages.beets.doc)
  • beets.man (beetsPackages.beets-stable.man, beetsPackages.beets.man)
  • blender-hip
  • btop-rocm
  • docling (python312Packages.docling)
  • docling.dist (python312Packages.docling.dist)
  • easyocr (python312Packages.easyocr)
  • easyocr.dist (python312Packages.easyocr.dist)
  • exo
  • exo.dist
  • gemmi (python312Packages.gemmi)
  • immich-machine-learning
  • immich-machine-learning.dist
  • lacus
  • lacus.dist
  • libretranslate (python312Packages.libretranslate)
  • libretranslate.dist (python312Packages.libretranslate.dist)
  • magma (magma-hip)
  • magma-cuda-static
  • magma-cuda-static.test
  • magma.test (magma-hip.test)
  • minari (python312Packages.minari)
  • minari.dist (python312Packages.minari.dist)
  • mlflow-server
  • mlflow-server.dist
  • mokuro
  • mokuro.dist
  • ollama-rocm
  • open-webui
  • open-webui.dist
  • openai-whisper (python312Packages.openai-whisper)
  • openai-whisper.dist (python312Packages.openai-whisper.dist)
  • opensplat
  • opensplatWithCuda
  • pianotrans
  • pianotrans.dist
  • pitivi
  • private-gpt
  • private-gpt.dist
  • python312Packages.accelerate
  • python312Packages.accelerate.dist
  • python312Packages.albumentations
  • python312Packages.albumentations.dist
  • python312Packages.ale-py
  • python312Packages.ale-py.dist
  • python312Packages.apptools
  • python312Packages.apptools.dist
  • python312Packages.apricot-select
  • python312Packages.apricot-select.dist
  • python312Packages.argos-translate-files
  • python312Packages.argos-translate-files.dist
  • python312Packages.argostranslate
  • python312Packages.argostranslate.dist
  • python312Packages.array-api-compat
  • python312Packages.array-api-compat.dist
  • python312Packages.arviz
  • python312Packages.arviz.dist
  • python312Packages.asteroid-filterbanks
  • python312Packages.asteroid-filterbanks.dist
  • python312Packages.atomman
  • python312Packages.atomman.dist
  • python312Packages.attacut
  • python312Packages.attacut.dist
  • python312Packages.ax-platform
  • python312Packages.ax-platform.dist
  • python312Packages.bitsandbytes
  • python312Packages.bitsandbytes.dist
  • python312Packages.blosc2
  • python312Packages.blosc2.dist
  • python312Packages.boost-histogram
  • python312Packages.boost-histogram.dist
  • python312Packages.botorch
  • python312Packages.botorch.dist
  • python312Packages.captum
  • python312Packages.captum.dist
  • python312Packages.clean-fid
  • python312Packages.clean-fid.dist
  • python312Packages.cleanvision
  • python312Packages.cleanvision.dist
  • python312Packages.clip
  • python312Packages.clip-anytorch
  • python312Packages.clip-anytorch.dist
  • python312Packages.clip.dist
  • python312Packages.cnvkit
  • python312Packages.cnvkit.dist
  • python312Packages.coffea
  • python312Packages.coffea.dist
  • python312Packages.colbert-ai
  • python312Packages.colbert-ai.dist
  • python312Packages.compressai
  • python312Packages.compressai.dist
  • python312Packages.compressed-tensors
  • python312Packages.compressed-tensors.dist
  • python312Packages.corner
  • python312Packages.corner.dist
  • python312Packages.ctranslate2
  • python312Packages.ctranslate2.dist
  • python312Packages.curated-transformers
  • python312Packages.curated-transformers.dist
  • python312Packages.dalle-mini
  • python312Packages.dalle-mini.dist
  • python312Packages.dask-awkward
  • python312Packages.dask-awkward.dist
  • python312Packages.dask-histogram
  • python312Packages.dask-histogram.dist
  • python312Packages.dctorch
  • python312Packages.dctorch.dist
  • python312Packages.deepdish
  • python312Packages.deepdish.dist
  • python312Packages.deepface
  • python312Packages.deepface.dist
  • python312Packages.deepsearch-toolkit
  • python312Packages.deepsearch-toolkit.dist
  • python312Packages.deepwave
  • python312Packages.deepwave.dist
  • python312Packages.detectron2
  • python312Packages.detectron2.dist
  • python312Packages.diffusers
  • python312Packages.diffusers.dist
  • python312Packages.distrax
  • python312Packages.distrax.dist
  • python312Packages.docling-core
  • python312Packages.docling-core.dist
  • python312Packages.docling-ibm-models
  • python312Packages.docling-ibm-models.dist
  • python312Packages.docling-parse
  • python312Packages.docling-parse.dist
  • python312Packages.edward
  • python312Packages.edward.dist
  • python312Packages.effdet
  • python312Packages.effdet.dist
  • python312Packages.envisage
  • python312Packages.envisage.dist
  • python312Packages.evosax
  • python312Packages.evosax.dist
  • python312Packages.experiment-utilities
  • python312Packages.experiment-utilities.dist
  • python312Packages.facenet-pytorch
  • python312Packages.facenet-pytorch.dist
  • python312Packages.fairscale
  • python312Packages.fairscale.dist
  • python312Packages.fastai
  • python312Packages.fastai.dist
  • python312Packages.faster-whisper
  • python312Packages.faster-whisper.dist
  • python312Packages.fastjet
  • python312Packages.fastjet.dist
  • python312Packages.fastmri
  • python312Packages.fastmri.dist
  • python312Packages.fickling
  • python312Packages.fickling.dist
  • python312Packages.finetuning-scheduler
  • python312Packages.finetuning-scheduler.dist
  • python312Packages.flammkuchen
  • python312Packages.flammkuchen.dist
  • python312Packages.flax
  • python312Packages.flax.dist
  • python312Packages.flaxlib
  • python312Packages.flaxlib.dist
  • python312Packages.flowmc
  • python312Packages.flowmc.dist
  • python312Packages.flyingsquid
  • python312Packages.flyingsquid.dist
  • python312Packages.funsor
  • python312Packages.funsor.dist
  • python312Packages.fvcore
  • python312Packages.fvcore.dist
  • python312Packages.gpytorch
  • python312Packages.gpytorch.dist
  • python312Packages.grad-cam
  • python312Packages.grad-cam.dist
  • python312Packages.gradio
  • python312Packages.gradio-client
  • python312Packages.gradio-client.dist
  • python312Packages.gradio-pdf
  • python312Packages.gradio-pdf.dist
  • python312Packages.gradio.dist
  • python312Packages.graphtage
  • python312Packages.graphtage.dist
  • python312Packages.guidance
  • python312Packages.guidance.dist
  • python312Packages.gymnasium
  • python312Packages.gymnasium.dist
  • python312Packages.hist
  • python312Packages.hist.dist
  • python312Packages.ignite
  • python312Packages.ignite.dist
  • python312Packages.imagededup
  • python312Packages.imagededup.dist
  • python312Packages.imgcat
  • python312Packages.imgcat.dist
  • python312Packages.insightface
  • python312Packages.insightface.dist
  • python312Packages.invisible-watermark
  • python312Packages.invisible-watermark.dist
  • python312Packages.iopath
  • python312Packages.iopath.dist
  • python312Packages.islpy
  • python312Packages.islpy.dist
  • python312Packages.julius
  • python312Packages.julius.dist
  • python312Packages.k-diffusion
  • python312Packages.k-diffusion.dist
  • python312Packages.keras
  • python312Packages.keras.dist
  • python312Packages.kornia
  • python312Packages.kornia.dist
  • python312Packages.lacuscore
  • python312Packages.lacuscore.dist
  • python312Packages.lancedb
  • python312Packages.lancedb.dist
  • python312Packages.langchain-huggingface
  • python312Packages.langchain-huggingface.dist
  • python312Packages.layoutparser
  • python312Packages.layoutparser.dist
  • python312Packages.librosa
  • python312Packages.librosa.dist
  • python312Packages.linear-operator
  • python312Packages.linear-operator.dist
  • python312Packages.lion-pytorch
  • python312Packages.lion-pytorch.dist
  • python312Packages.llama-index
  • python312Packages.llama-index-agent-openai
  • python312Packages.llama-index-agent-openai.dist
  • python312Packages.llama-index-cli
  • python312Packages.llama-index-cli.dist
  • python312Packages.llama-index-core
  • python312Packages.llama-index-core.dist
  • python312Packages.llama-index-embeddings-gemini
  • python312Packages.llama-index-embeddings-gemini.dist
  • python312Packages.llama-index-embeddings-google
  • python312Packages.llama-index-embeddings-google.dist
  • python312Packages.llama-index-embeddings-huggingface
  • python312Packages.llama-index-embeddings-huggingface.dist
  • python312Packages.llama-index-embeddings-ollama
  • python312Packages.llama-index-embeddings-ollama.dist
  • python312Packages.llama-index-embeddings-openai
  • python312Packages.llama-index-embeddings-openai.dist
  • python312Packages.llama-index-graph-stores-nebula
  • python312Packages.llama-index-graph-stores-nebula.dist
  • python312Packages.llama-index-graph-stores-neo4j
  • python312Packages.llama-index-graph-stores-neo4j.dist
  • python312Packages.llama-index-graph-stores-neptune
  • python312Packages.llama-index-graph-stores-neptune.dist
  • python312Packages.llama-index-indices-managed-llama-cloud
  • python312Packages.llama-index-indices-managed-llama-cloud.dist
  • python312Packages.llama-index-legacy
  • python312Packages.llama-index-legacy.dist
  • python312Packages.llama-index-llms-ollama
  • python312Packages.llama-index-llms-ollama.dist
  • python312Packages.llama-index-llms-openai
  • python312Packages.llama-index-llms-openai-like
  • python312Packages.llama-index-llms-openai-like.dist
  • python312Packages.llama-index-llms-openai.dist
  • python312Packages.llama-index-multi-modal-llms-openai
  • python312Packages.llama-index-multi-modal-llms-openai.dist
  • python312Packages.llama-index-program-openai
  • python312Packages.llama-index-program-openai.dist
  • python312Packages.llama-index-question-gen-openai
  • python312Packages.llama-index-question-gen-openai.dist
  • python312Packages.llama-index-readers-database
  • python312Packages.llama-index-readers-database.dist
  • python312Packages.llama-index-readers-file
  • python312Packages.llama-index-readers-file.dist
  • python312Packages.llama-index-readers-json
  • python312Packages.llama-index-readers-json.dist
  • python312Packages.llama-index-readers-llama-parse
  • python312Packages.llama-index-readers-llama-parse.dist
  • python312Packages.llama-index-readers-s3
  • python312Packages.llama-index-readers-s3.dist
  • python312Packages.llama-index-readers-twitter
  • python312Packages.llama-index-readers-twitter.dist
  • python312Packages.llama-index-readers-txtai
  • python312Packages.llama-index-readers-txtai.dist
  • python312Packages.llama-index-readers-weather
  • python312Packages.llama-index-readers-weather.dist
  • python312Packages.llama-index-vector-stores-chroma
  • python312Packages.llama-index-vector-stores-chroma.dist
  • python312Packages.llama-index-vector-stores-google
  • python312Packages.llama-index-vector-stores-google.dist
  • python312Packages.llama-index-vector-stores-postgres
  • python312Packages.llama-index-vector-stores-postgres.dist
  • python312Packages.llama-index-vector-stores-qdrant
  • python312Packages.llama-index-vector-stores-qdrant.dist
  • python312Packages.llama-index.dist
  • python312Packages.llama-parse
  • python312Packages.llama-parse.dist
  • python312Packages.llguidance
  • python312Packages.llguidance.dist
  • python312Packages.lm-eval
  • python312Packages.lm-eval.dist
  • python312Packages.loopy
  • python312Packages.loopy.dist
  • python312Packages.manga-ocr
  • python312Packages.manga-ocr.dist
  • python312Packages.manifest-ml
  • python312Packages.manifest-ml.dist
  • python312Packages.manifold3d
  • python312Packages.manifold3d.dist
  • python312Packages.markitdown
  • python312Packages.markitdown.dist
  • python312Packages.mayavi
  • python312Packages.mayavi.dist
  • python312Packages.mdtraj
  • python312Packages.mdtraj.dist
  • python312Packages.meshtastic
  • python312Packages.meshtastic.dist
  • python312Packages.mhcflurry
  • python312Packages.mhcflurry.dist
  • python312Packages.mlflow
  • python312Packages.mlflow.dist
  • python312Packages.mmcv
  • python312Packages.mmcv.dist
  • python312Packages.mmengine
  • python312Packages.mmengine.dist
  • python312Packages.monai
  • python312Packages.monai.dist
  • python312Packages.monotonic-alignment-search
  • python312Packages.monotonic-alignment-search.dist
  • python312Packages.monty
  • python312Packages.monty.dist
  • python312Packages.mplhep
  • python312Packages.mplhep.dist
  • python312Packages.mtcnn
  • python312Packages.mtcnn.dist
  • python312Packages.nanobind
  • python312Packages.nanobind.dist
  • python312Packages.nianet
  • python312Packages.nianet.dist
  • python312Packages.numpyro
  • python312Packages.numpyro.dist
  • python312Packages.open-clip-torch
  • python312Packages.open-clip-torch.dist
  • python312Packages.optimum
  • python312Packages.optimum.dist
  • python312Packages.optuna
  • python312Packages.optuna.dist
  • python312Packages.oryx
  • python312Packages.oryx.dist
  • python312Packages.outlines
  • python312Packages.outlines-core
  • python312Packages.outlines-core.dist
  • python312Packages.outlines.dist
  • python312Packages.pandantic
  • python312Packages.pandantic.dist
  • python312Packages.pandas-stubs
  • python312Packages.pandas-stubs.dist
  • python312Packages.pandera
  • python312Packages.pandera.dist
  • python312Packages.pdfplumber
  • python312Packages.pdfplumber.dist
  • python312Packages.peft
  • python312Packages.peft.dist
  • python312Packages.pettingzoo
  • python312Packages.pettingzoo.dist
  • python312Packages.pgmpy
  • python312Packages.pgmpy.dist
  • python312Packages.phonopy
  • python312Packages.phonopy.dist
  • python312Packages.piano-transcription-inference
  • python312Packages.piano-transcription-inference.dist
  • python312Packages.pomegranate
  • python312Packages.pomegranate.dist
  • python312Packages.private-gpt
  • python312Packages.private-gpt.dist
  • python312Packages.pyannote-audio
  • python312Packages.pyannote-audio.dist
  • python312Packages.pyannote-pipeline
  • python312Packages.pyannote-pipeline.dist
  • python312Packages.pylance
  • python312Packages.pylance.dist
  • python312Packages.pymanopt
  • python312Packages.pymanopt.dist
  • python312Packages.pymatgen
  • python312Packages.pymatgen.dist
  • python312Packages.pyopencl
  • python312Packages.pyopencl.dist
  • python312Packages.pyro-ppl
  • python312Packages.pyro-ppl.dist
  • python312Packages.pyseries
  • python312Packages.pyseries.dist
  • python312Packages.pytensor
  • python312Packages.pytensor.dist
  • python312Packages.pytorch-bench
  • python312Packages.pytorch-bench.dist
  • python312Packages.pytorch-lightning
  • python312Packages.pytorch-lightning.dist
  • python312Packages.pytorch-metric-learning
  • python312Packages.pytorch-metric-learning.dist
  • python312Packages.pytorch-msssim
  • python312Packages.pytorch-msssim.dist
  • python312Packages.pytorch-pfn-extras
  • python312Packages.pytorch-pfn-extras.dist
  • python312Packages.pytorch3d
  • python312Packages.pytorch3d.dist
  • python312Packages.reikna
  • python312Packages.reikna.dist
  • python312Packages.rerun-sdk
  • python312Packages.rerun-sdk.dist
  • python312Packages.resampy
  • python312Packages.resampy.dist
  • python312Packages.resize-right
  • python312Packages.resize-right.dist
  • python312Packages.retinaface
  • python312Packages.retinaface.dist
  • python312Packages.rlax
  • python312Packages.rlax.dist
  • python312Packages.rlcard
  • python312Packages.rlcard.dist
  • python312Packages.roma
  • python312Packages.roma.dist
  • python312Packages.rotary-embedding-torch
  • python312Packages.rotary-embedding-torch.dist
  • python312Packages.safetensors
  • python312Packages.safetensors.dist
  • python312Packages.sagemaker-mlflow
  • python312Packages.sagemaker-mlflow.dist
  • python312Packages.sentence-transformers
  • python312Packages.sentence-transformers.dist
  • python312Packages.sfepy
  • python312Packages.sfepy.dist
  • python312Packages.shap
  • python312Packages.shap.dist
  • python312Packages.shimmy
  • python312Packages.shimmy.dist
  • python312Packages.skorch
  • python312Packages.skorch.dist
  • python312Packages.skrl
  • python312Packages.skrl.dist
  • python312Packages.slicer
  • python312Packages.slicer.dist
  • python312Packages.snorkel
  • python312Packages.snorkel.dist
  • python312Packages.soxr
  • python312Packages.soxr.dist
  • python312Packages.spacy
  • python312Packages.spacy-curated-transformers
  • python312Packages.spacy-curated-transformers.dist
  • python312Packages.spacy-loggers
  • python312Packages.spacy-loggers.dist
  • python312Packages.spacy-lookups-data
  • python312Packages.spacy-lookups-data.dist
  • python312Packages.spacy-transformers
  • python312Packages.spacy-transformers.dist
  • python312Packages.spacy.dist
  • python312Packages.speechbrain
  • python312Packages.speechbrain.dist
  • python312Packages.speechrecognition
  • python312Packages.speechrecognition.dist
  • python312Packages.stable-baselines3
  • python312Packages.stable-baselines3.dist
  • python312Packages.stanza
  • python312Packages.stanza.dist
  • python312Packages.stytra
  • python312Packages.stytra.dist
  • python312Packages.sumo
  • python312Packages.sumo.dist
  • python312Packages.tables
  • python312Packages.tables.dist
  • python312Packages.tensorboardx
  • python312Packages.tensorboardx.dist
  • python312Packages.tensordict
  • python312Packages.tensordict.dist
  • python312Packages.tensorflow-probability
  • python312Packages.tensorflow-probability.dist
  • python312Packages.test-tube
  • python312Packages.test-tube.dist
  • python312Packages.textacy
  • python312Packages.textacy.dist
  • python312Packages.textnets
  • python312Packages.textnets.dist
  • python312Packages.tianshou
  • python312Packages.tianshou.dist
  • python312Packages.timm
  • python312Packages.timm.dist
  • python312Packages.tinygrad
  • python312Packages.tinygrad.dist
  • python312Packages.torch (python312Packages.torchWithoutCuda, python312Packages.torchWithoutRocm)
  • python312Packages.torch-audiomentations
  • python312Packages.torch-audiomentations.dist
  • python312Packages.torch-geometric
  • python312Packages.torch-geometric.dist
  • python312Packages.torch-no-triton
  • python312Packages.torch-no-triton.cxxdev
  • python312Packages.torch-no-triton.dev
  • python312Packages.torch-no-triton.dist
  • python312Packages.torch-no-triton.lib
  • python312Packages.torch-pitch-shift
  • python312Packages.torch-pitch-shift.dist
  • python312Packages.torch-tb-profiler
  • python312Packages.torch-tb-profiler.dist
  • python312Packages.torch.cxxdev (python312Packages.torchWithoutCuda.cxxdev, python312Packages.torchWithoutRocm.cxxdev)
  • python312Packages.torch.dev (python312Packages.torchWithoutCuda.dev, python312Packages.torchWithoutRocm.dev)
  • python312Packages.torch.dist (python312Packages.torchWithoutCuda.dist, python312Packages.torchWithoutRocm.dist)
  • python312Packages.torch.lib (python312Packages.torchWithoutCuda.lib, python312Packages.torchWithoutRocm.lib)
  • python312Packages.torchWithCuda
  • python312Packages.torchWithCuda.cxxdev
  • python312Packages.torchWithCuda.dev
  • python312Packages.torchWithCuda.dist
  • python312Packages.torchWithCuda.lib
  • python312Packages.torchWithRocm
  • python312Packages.torchWithRocm.cxxdev
  • python312Packages.torchWithRocm.dev
  • python312Packages.torchWithRocm.dist
  • python312Packages.torchWithRocm.lib
  • python312Packages.torchWithVulkan
  • python312Packages.torchWithVulkan.cxxdev
  • python312Packages.torchWithVulkan.dev
  • python312Packages.torchWithVulkan.dist
  • python312Packages.torchWithVulkan.lib
  • python312Packages.torchaudio
  • python312Packages.torchaudio.dist
  • python312Packages.torchbench
  • python312Packages.torchbench.dist
  • python312Packages.torchcrepe
  • python312Packages.torchcrepe.dist
  • python312Packages.torchdiffeq
  • python312Packages.torchdiffeq.dist
  • python312Packages.torcheval
  • python312Packages.torcheval.dist
  • python312Packages.torchinfo
  • python312Packages.torchinfo.dist
  • python312Packages.torchio
  • python312Packages.torchio.dist
  • python312Packages.torchlibrosa
  • python312Packages.torchlibrosa.dist
  • python312Packages.torchmetrics
  • python312Packages.torchmetrics.dist
  • python312Packages.torchprofile
  • python312Packages.torchprofile.dist
  • python312Packages.torchsde
  • python312Packages.torchsde.dist
  • python312Packages.torchsnapshot
  • python312Packages.torchsnapshot.dist
  • python312Packages.torchsummary
  • python312Packages.torchsummary.dist
  • python312Packages.torchtnt
  • python312Packages.torchtnt-nightly
  • python312Packages.torchtnt-nightly.dist
  • python312Packages.torchtnt.dist
  • python312Packages.torchvision
  • python312Packages.torchvision.dist
  • python312Packages.trainer
  • python312Packages.trainer.dist
  • python312Packages.transformers
  • python312Packages.transformers.dist
  • python312Packages.translatehtml
  • python312Packages.translatehtml.dist
  • python312Packages.treescope
  • python312Packages.treescope.dist
  • python312Packages.ttach
  • python312Packages.ttach.dist
  • python312Packages.txtai
  • python312Packages.txtai.dist
  • python312Packages.unstructured-inference
  • python312Packages.unstructured-inference.dist
  • python312Packages.vector
  • python312Packages.vector.dist
  • python312Packages.vqgan-jax
  • python312Packages.vqgan-jax.dist
  • python312Packages.wandb
  • python312Packages.wandb.dist
  • python312Packages.webdataset
  • python312Packages.webdataset.dist
  • python312Packages.xformers
  • python312Packages.xformers.dist
  • python312Packages.xgrammar
  • rclip
  • rclip.dist
  • rocmPackages.amdsmi (rocmPackages_6.amdsmi)
  • rocmPackages.aotriton (rocmPackages_6.aotriton)
  • rocmPackages.ck4inductor (rocmPackages_6.ck4inductor)
  • rocmPackages.ck4inductor.dist (rocmPackages_6.ck4inductor.dist)
  • rocmPackages.clang (rocmPackages.llvm.clang, rocmPackages.llvm.rocmcxx, rocmPackages_6.clang, rocmPackages_6.llvm.clang, rocmPackages_6.llvm.rocmcxx)
  • rocmPackages.clr (rocmPackages_6.clr)
  • rocmPackages.clr.icd (rocmPackages_6.clr.icd)
  • rocmPackages.composable_kernel (rocmPackages_6.composable_kernel)
  • rocmPackages.half (rocmPackages_6.half)
  • rocmPackages.hip-common (rocmPackages_6.hip-common)
  • rocmPackages.hipblas (rocmPackages_6.hipblas)
  • rocmPackages.hipblas-common (rocmPackages_6.hipblas-common)
  • rocmPackages.hipblaslt (rocmPackages_6.hipblaslt)
  • rocmPackages.hipcc (rocmPackages_6.hipcc)
  • rocmPackages.hipcub (rocmPackages_6.hipcub)
  • rocmPackages.hipfft (rocmPackages_6.hipfft)
  • rocmPackages.hipfort (rocmPackages_6.hipfort)
  • rocmPackages.hipify (rocmPackages_6.hipify)
  • rocmPackages.hiprand (rocmPackages_6.hiprand)
  • rocmPackages.hipsolver (rocmPackages_6.hipsolver)
  • rocmPackages.hipsparse (rocmPackages_6.hipsparse)
  • rocmPackages.hsa-amd-aqlprofile-bin (rocmPackages_6.hsa-amd-aqlprofile-bin)
  • rocmPackages.hsakmt (rocmPackages.rocm-runtime, rocmPackages_6.hsakmt, rocmPackages_6.rocm-runtime)
  • rocmPackages.llvm.bintools (rocmPackages_6.llvm.bintools)
  • rocmPackages.llvm.clang-tools (rocmPackages_6.llvm.clang-tools)
  • rocmPackages.llvm.clang-unwrapped (rocmPackages_6.llvm.clang-unwrapped)
  • rocmPackages.llvm.clang-unwrapped.dev (rocmPackages_6.llvm.clang-unwrapped.dev)
  • rocmPackages.llvm.clang-unwrapped.lib (rocmPackages_6.llvm.clang-unwrapped.lib)
  • rocmPackages.llvm.clang-unwrapped.python (rocmPackages_6.llvm.clang-unwrapped.python)
  • rocmPackages.llvm.compiler-rt (rocmPackages.llvm.compiler-rt-libc, rocmPackages_6.llvm.compiler-rt, rocmPackages_6.llvm.compiler-rt-libc)
  • rocmPackages.llvm.compiler-rt.dev (rocmPackages.llvm.compiler-rt-libc.dev, rocmPackages_6.llvm.compiler-rt-libc.dev, rocmPackages_6.llvm.compiler-rt.dev)
  • rocmPackages.llvm.libcxx (rocmPackages_6.llvm.libcxx)
  • rocmPackages.llvm.libcxx.dev (rocmPackages_6.llvm.libcxx.dev)
  • rocmPackages.llvm.libunwind (rocmPackages_6.llvm.libunwind)
  • rocmPackages.llvm.libunwind.dev (rocmPackages_6.llvm.libunwind.dev)
  • rocmPackages.llvm.lld (rocmPackages_6.llvm.lld)
  • rocmPackages.llvm.lld.dev (rocmPackages_6.llvm.lld.dev)
  • rocmPackages.llvm.lld.lib (rocmPackages_6.llvm.lld.lib)
  • rocmPackages.llvm.llvm (rocmPackages_6.llvm.llvm)
  • rocmPackages.llvm.llvm.dev (rocmPackages_6.llvm.llvm.dev)
  • rocmPackages.llvm.llvm.lib (rocmPackages_6.llvm.llvm.lib)
  • rocmPackages.llvm.llvm.python (rocmPackages_6.llvm.llvm.python)
  • rocmPackages.openmp (rocmPackages.llvm.openmp, rocmPackages_6.llvm.openmp, rocmPackages_6.openmp)
  • rocmPackages.openmp.dev (rocmPackages.llvm.openmp.dev, rocmPackages_6.llvm.openmp.dev, rocmPackages_6.openmp.dev)
  • rocmPackages.rocm-merged-llvm (rocmPackages.llvm.rocm-merged-llvm, rocmPackages_6.llvm.rocm-merged-llvm, rocmPackages_6.rocm-merged-llvm)
  • rocmPackages.stdenv (rocmPackages.llvm.rocmClangStdenv, rocmPackages_6.llvm.rocmClangStdenv, rocmPackages_6.stdenv)
  • rocmPackages.migraphx (rocmPackages_6.migraphx)
  • rocmPackages.miopen (rocmPackages.miopen-hip, rocmPackages_6.miopen, rocmPackages_6.miopen-hip)
  • rocmPackages.mivisionx (rocmPackages.mivisionx-hip, rocmPackages_6.mivisionx, rocmPackages_6.mivisionx-hip)
  • rocmPackages.mivisionx-cpu (rocmPackages_6.mivisionx-cpu)
  • rocmPackages.mpi (rocmPackages.openmpi, rocmPackages_6.mpi, rocmPackages_6.openmpi)
  • rocmPackages.mpi.dev (rocmPackages.openmpi.dev, rocmPackages_6.mpi.dev, rocmPackages_6.openmpi.dev)
  • rocmPackages.mpi.man (rocmPackages.openmpi.man, rocmPackages_6.mpi.man, rocmPackages_6.openmpi.man)
  • rocmPackages.mscclpp (rocmPackages_6.mscclpp)
  • rocmPackages.rccl (rocmPackages_6.rccl)
  • rocmPackages.rccl-tests (rocmPackages_6.rccl-tests)
  • rocmPackages.rccl-tests.test (rocmPackages_6.rccl-tests.test)
  • rocmPackages.rdc (rocmPackages_6.rdc)
  • rocmPackages.rdc.doc (rocmPackages_6.rdc.doc)
  • rocmPackages.rocalution (rocmPackages_6.rocalution)
  • rocmPackages.rocblas (rocmPackages_6.rocblas)
  • rocmPackages.rocdbgapi (rocmPackages_6.rocdbgapi)
  • rocmPackages.rocdbgapi.doc (rocmPackages_6.rocdbgapi.doc)
  • rocmPackages.rocfft (rocmPackages_6.rocfft)
  • rocmPackages.rocgdb (rocmPackages_6.rocgdb)
  • rocmPackages.rocm-cmake (rocmPackages_6.rocm-cmake)
  • rocmPackages.rocm-comgr (rocmPackages_6.rocm-comgr)
  • rocmPackages.rocm-core (rocmPackages_6.rocm-core)
  • rocmPackages.rocm-device-libs (rocmPackages_6.rocm-device-libs)
  • rocmPackages.rocm-docs-core (rocmPackages_6.rocm-docs-core)
  • rocmPackages.rocm-docs-core.dist (rocmPackages_6.rocm-docs-core.dist)
  • rocmPackages.rocm-smi (rocmPackages_6.rocm-smi)
  • rocmPackages.rocm-tests (rocmPackages_6.rocm-tests)
  • rocmPackages.rocmPath (rocmPackages_6.rocmPath)
  • rocmPackages.rocminfo (rocmPackages_6.rocminfo)
  • rocmPackages.rocmlir (rocmPackages.rocmlir-rock, rocmPackages_6.rocmlir, rocmPackages_6.rocmlir-rock)
  • rocmPackages.rocprim (rocmPackages_6.rocprim)
  • rocmPackages.rocprofiler (rocmPackages_6.rocprofiler)
  • rocmPackages.rocprofiler-register (rocmPackages_6.rocprofiler-register)
  • rocmPackages.rocr-debug-agent (rocmPackages_6.rocr-debug-agent)
  • rocmPackages.rocrand (rocmPackages_6.rocrand)
  • rocmPackages.rocsolver (rocmPackages_6.rocsolver)
  • rocmPackages.rocsparse (rocmPackages_6.rocsparse)
  • rocmPackages.rocthrust (rocmPackages_6.rocthrust)
  • rocmPackages.roctracer (rocmPackages_6.roctracer)
  • rocmPackages.rocwmma (rocmPackages_6.rocwmma)
  • rocmPackages.rpp (rocmPackages.rpp-hip, rocmPackages_6.rpp, rocmPackages_6.rpp-hip)
  • rocmPackages.rpp-cpu (rocmPackages_6.rpp-cpu)
  • rocmPackages.tensile (rocmPackages_6.tensile)
  • rocmPackages.tensile.dist (rocmPackages_6.tensile.dist)
  • rocmPackages.triton (rocmPackages_6.triton)
  • rocmPackages.triton-llvm (rocmPackages_6.triton-llvm)
  • rocmPackages.triton-llvm.doc (rocmPackages_6.triton-llvm.doc)
  • rocmPackages.triton-llvm.man (rocmPackages_6.triton-llvm.man)
  • rocmPackages.triton.dist (rocmPackages_6.triton.dist)
  • supergee
  • tocpdf
  • tocpdf.dist
  • unstructured-api
  • voicevox
  • voicevox-engine
  • voicevox-engine.dist
  • whisper-ctranslate2
  • whisper-ctranslate2.dist
  • witnessme
  • witnessme.dist
  • wyoming-faster-whisper
  • wyoming-faster-whisper.dist

@arunoruto
Copy link
Contributor

arunoruto commented Feb 28, 2025

Zluda is still on version 3 in nixpkgs, which expects ROCm 5.x.x
#383757 updated it to version 4 (targeting the latest commit even) and should work with 6.x.x
I am not sure if the current tests target only the unstable branch or if they are using the master branch

@LunNova
Copy link
Member Author

LunNova commented Feb 28, 2025

Will look at zluda 4 this evening, likely broken due to build parallelism hacks that aren't yet cleaned up in this PR that were removed in @GZGavinZhao 's branch.

@pshirshov
Copy link
Contributor

JFYI, I've just built my system from your latest commit (without rocmSupport = true, that takes ages, just rocm itself and ollama). Finally it works and I can schedule models across several GPUs without resorting to Docker. Thank you.

Zluda support would be very nice to have, it makes many things much easier.

If you are open to donations I would be happy to chip in.

@deftdawg
Copy link
Contributor

I repaired exo to properly detect AMD last night, however tinygrad needs tinygrad.runtime.autogen.am to be able to inference.

Was unable to rebuild tinygrad w/ ROCMSupport because of Pytorch being marked as broken (overriding fails building magma-2.9.0). This morning I repointed my nixpkgs to your branch to attempt to build against, it spent a very long time to compiling on my 13900K (w/ 6900XT) before eventually dying on qmxjrkqr6lrcyyk7bfdyac8jpam7nvhk-composable_kernel-6.4.0-unstable-20241220.drv; I retried and it failed a second time same spot...

Curious how you got composable_kernel to build successfully on your set-up? Also I want to thank you for your Herculean efforts on this PR! 🍻

ninja: build stopped: subcommand failed.
error: builder for '/nix/store/qmxjrkqr6lrcyyk7bfdyac8jpam7nvhk-composable_kernel-6.4.0-unstable-20241220.drv' failed with exit code 1;
       last 25 log lines:
       > Job completed: /build/device_batchnorm_infer_f32_instance-gfx90a-a5f5df.o
       > Job completed: /build/device_batchnorm_infer_f32_instance-gfx942-b05648.o
       > Job completed: library/src/tensor_operation_instance/gpu/batchnorm/CMakeFiles/device_batchnorm_instance.dir/device_batchnorm_infer_f32_instance.cpp.o
       > [3 jobs |   1% 57/4212 @ 0.0/s | 0:24:17 | ETA 29:31:15 ] Building CXX object library/src/tensor_operation_instance/gpu/batchnorm/CMakeFiles/device_batchnorm_instance.dir/device_batchnorm_infer_bf16_instance.cpp.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx1030-dbc639.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx1100-e8893f.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx1101-4739c6.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx1102-e403a4.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx900-c0398a.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx906-8dd78e.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx908-9815d3.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx90a-d60170.o
       > Job completed: /build/device_batchnorm_infer_bf16_instance-gfx942-bcb898.o
       > Job completed: library/src/tensor_operation_instance/gpu/batchnorm/CMakeFiles/device_batchnorm_instance.dir/device_batchnorm_infer_bf16_instance.cpp.o
       > [2 jobs |   1% 58/4212 @ 0.0/s | 0:24:56 | ETA 29:46:24 ] Building CXX object library/src/tensor_operation_instance/gpu/batched_gemm_softmax_gemm_permute/CMakeFiles/device_batched_gemm_softmax_gemm_permute_instance.dir/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_f16_f16_f16_f16_gmk_gnk_gno_gmo_instance.cpp.o
       > Job completed: /build/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_f16_f16_f16_f16_gmk_gnk_gno_gmo_instance-gfx908-40d591.o
       > Job completed: /build/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_f16_f16_f16_f16_gmk_gnk_gno_gmo_instance-gfx90a-591a37.o
       > Job completed: /build/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_f16_f16_f16_f16_gmk_gnk_gno_gmo_instance-gfx942-165c4b.o
       > Job completed: library/src/tensor_operation_instance/gpu/batched_gemm_softmax_gemm_permute/CMakeFiles/device_batched_gemm_softmax_gemm_permute_instance.dir/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_f16_f16_f16_f16_gmk_gnk_gno_gmo_instance.cpp.o
       > [1 jobs |   1% 59/4212 @ 0.0/s | 0:25:57 | ETA 30:27:09 ] Building CXX object library/src/tensor_operation_instance/gpu/batched_gemm_softmax_gemm_permute/CMakeFiles/device_batched_gemm_softmax_gemm_permute_instance.dir/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_bf16_bf16_bf16_bf16_gmk_gnk_gno_gmo_instance.cpp.o
       > Job completed: /build/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_bf16_bf16_bf16_bf16_gmk_gnk_gno_gmo_instance-gfx908-fa06fc.o
       > Job completed: /build/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_bf16_bf16_bf16_bf16_gmk_gnk_gno_gmo_instance-gfx90a-ce2321.o
       > Job completed: /build/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_bf16_bf16_bf16_bf16_gmk_gnk_gno_gmo_instance-gfx942-2da746.o
       > Job completed: library/src/tensor_operation_instance/gpu/batched_gemm_softmax_gemm_permute/CMakeFiles/device_batched_gemm_softmax_gemm_permute_instance.dir/device_batched_gemm_bias_softmax_gemm_permute_xdl_cshuffle_bf16_bf16_bf16_bf16_gmk_gnk_gno_gmo_instance.cpp.o
       > ninja: build stopped: subcommand failed.
       For full logs, run 'nix log /nix/store/qmxjrkqr6lrcyyk7bfdyac8jpam7nvhk-composable_kernel-6.4.0-unstable-20241220.drv'.
error: 1 dependencies of derivation '/nix/store/lmp7nxhhq373l7fpld4icyb2mpw6gl2s-miopen-6.3.3.drv' failed to build
error: 1 dependencies of derivation '/nix/store/sza8qn4v1xczjybq58s7ck79j0pakgli-rocm-merged.drv' failed to build
error: 1 dependencies of derivation '/nix/store/4nah1dx2x87ym2dsm9wh9qyw6vkg7603-python3.12-torch-2.5.1.drv' failed to build
error: 1 dependencies of derivation '/nix/store/dl5rp696y1d5q98kzcv242snjj5qgs2m-python3.12-safetensors-0.5.2.drv' failed to build
error: 1 dependencies of derivation '/nix/store/sfrbpa2314bfc6k50r3c0h64cb19f8xz-python3.12-tinygrad-0.10.2.drv' failed to build
error: 1 dependencies of derivation '/nix/store/w0g9fvnmn15a7pv14jl7fv3qyrqwf83z-exo-0.15.0-alpha.drv' failed to build

@LunNova
Copy link
Member Author

LunNova commented Feb 28, 2025

Curious how you got composable_kernel to build successfully on your set-up? Also I want to thank you for your Herculean efforts on this PR! 🍻

It needs all the RAM. There's supposed to be code to limit the parallelism if you don't have enough but I guess it isn't tuned right.

@prusnak
Copy link
Member

prusnak commented Feb 28, 2025

cc @prusnak for review of magma-hip: remove ROCm version detection patch, set ROCM_CORE

I confirm that I was able to successfully build magma-hip with ROCm from this PR.

@LunNova maybe let's mark this ready for review and I'll merge? we can still do further fixes in follow-up fixups, I am just afraid we will run into merge conflicts again if we do not merge this PR soon enough.

@deftdawg
Copy link
Contributor

deftdawg commented Feb 28, 2025

It needs all the RAM. There's supposed to be code to limit the parallelism if you don't have enough but I guess it isn't tuned right.

🤣... now that you mention it, I did notice the system over 80GB of my 128GB of mem in btop at one point. I didn't see how high it got before it finally died, if I have another go I'll try to track that.

Edit: I'm rerunning, I think I might have misread available for in use, 78GB available now w/ 43 in use.

@henryrgithub
Copy link

I've gotten it to build a couple of times on 64GB with Nix limited to one build at a time, with nothing else significant running the lowest available RAM I got to was 4GB IIRC. I made a little python script just to track it 😬. Still haven't gotten models to cooperate with it, but things have been moving fast.

Hope it gets merged soon, it's been fun following the progress!

@LunNova
Copy link
Member Author

LunNova commented Feb 28, 2025

Is there anyone we need to give heads up to in terms of hydra resource usage for the slow core and memory hungry builds?

@prusnak
Copy link
Member

prusnak commented Feb 28, 2025

Is there anyone we need to give heads up to in terms of hydra resource usage for the slow core and memory hungry builds?

Good point. Maybe this should be targeted at staging instead of master?

@pshirshov
Copy link
Contributor

pshirshov commented Feb 28, 2025

🤣... now that you mention it, I did notice the system over 80GB of my 128GB of mem in btop at one point. I didn't see how high it got before it finally died, if I have another go I'll try to track that.

use zram swap, limit jobs count and core count in nix settings, the higher the parallelism, the more ram it needs. Use remote builders to speed things up. In my experiments, a 128Gb machine should be limited to 24-28 cores with zram on in order to be able to finish the build.

On how high it might get... While running with 64 cores it ate 230Gb. This might also help (add your VRAM as a swap, it's very efficient):

modprobe phram phram=swap,0xa0fa000000,40000Mi

modprobe mtdblock
mkswap /dev/mtdblock0
swapon /dev/mtdblock0 -p 10

There is a neat calculator on this page: https://www.foroelectro.net/english-f34/using-excess-video-memory-as-swap-in-linux-t497.html but essentially you just have to sum two numbers. Source: https://wiki.archlinux.org/title/Swap_on_video_RAM

Test your swap before you build, otherwise there might be nasty surprises. Turn off swaps on your nvme/ssd, if you leave them on, that almost guarantees 12309-ish freeze.

@github-actions github-actions bot added 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: changelog 8.has: documentation This PR adds or changes documentation labels Mar 1, 2025
@LunNova LunNova changed the base branch from master to staging March 1, 2025 01:21
@LunNova LunNova changed the title rocm-6: bump packages to 6.3.3 and add missing packages rocmPackages: 6.0.2 -> 6.3.3, and various ROCm build fixes and new packages Mar 1, 2025
rocsolver
# hipblaslt
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# hipblaslt

@@ -39,20 +44,44 @@ stdenv.mkDerivation (finalAttrs: {
owner = "ROCm";
repo = "hipBLAS";
rev = "rocm-${finalAttrs.version}";
hash = "sha256-Fq7o2sMmHlHIv9UKJw+u/h9K/ZhKVJWwosYTdYIsscA=";
#rev = "a4b23dec749d9d623f0e7699045f381ec3eddfab";
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
#rev = "a4b23dec749d9d623f0e7699045f381ec3eddfab";

@@ -106,16 +108,32 @@ stdenv.mkDerivation (finalAttrs: {
sqlite
oneDNN_2
blaze
cppcheck
# cppcheck
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# cppcheck

miopen,
protobuf,
abseil-cpp,
half,
nlohmann_json,
msgpack,
sqlite,
oneDNN_2,
blaze,
cppcheck,
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
cppcheck,

url = "https://github.com/GZGavinZhao/MIOpen/commit/416088b534618bd669a765afce59cfc7197064c1.patch";
hash = "sha256-OwONCA68y8s2GqtQj+OtotXwUXQ5jM8tpeM92iaD4MU=";
})
# (fetchpatch {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missed this arch compat patch. Might cause missing kernels for some ops for GPUs that aren't officially supported like iGPUs.

--replace "unpack_db(\"\''${CMAKE_SOURCE_DIR}/src/kernels/\''${FILE_NAME}.kdb.bz2\")" "" \
--replace "MIOPEN_HIP_COMPILER MATCHES \".*clang\\\\+\\\\+$\"" "true" \
--replace "set(MIOPEN_TIDY_ERRORS ALL)" "" # error: missing required key 'key'
#--replace "unpack_db(\"\''${CMAKE_SOURCE_DIR}/src/kernels/\''${FILE_NAME}.kdb.bz2\")" "" \
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to remove these commented lines in postPatch

(lib.cmakeFeature "CMAKE_C_COMPILER" "hipcc")
(lib.cmakeFeature "CMAKE_CXX_COMPILER" "hipcc")
"-DCMAKE_BUILD_TYPE=Release"
# "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON"

Comment on lines 88 to 90
(writeShellScriptBin "amdclang++" ''
exec clang++ "$@"
'')
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be able to drop this, clr has amdclang++ bin in PATH

Suggested change
(writeShellScriptBin "amdclang++" ''
exec clang++ "$@"
'')

Comment on lines 56 to 59
preConfigure = ''
makeFlagsArray+=("-l$(((NIX_BUILD_CORES * 2) / 3))")
'';

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missed a parallelism bodge, needs removed before merge

Suggested change
preConfigure = ''
makeFlagsArray+=("-l$(((NIX_BUILD_CORES * 2) / 3))")
'';

LunNova and others added 9 commits February 28, 2025 18:29
Includes patch suggested by @shuni64 which fixes half precision ABI
issues
Includes hipblaslt compression patch
Includes configurable hipblaslt support in rocblas
rocmPackages_6.hipblaslt: respect NIX_BUILD_CORES in tensilelite
rocmPackages_6.hipblas: propagate hipblas-common
rocmPackages_6.clr: avoid confusion with hipClangPath

Co-authored-by: Gavin Zhao <[email protected]>
rocmPackages.hsa-amd-aqlprofile-bin: 6.3.0 -> 6.3.3

rocmPackages.composable_kernel: unsplit build and clean up

remove unused disable-amdgpu-inline.patch

update documentation for build flags

composable_kernel's library files are compressed now so no need to apply our own compression

Co-authored-by: Gavin Zhao <[email protected]>

rocmPackages.llvm: comment out -orig attrs and document usage

rocmPackages.amdsmi: fix build

rocmPackages_6.rocm-docs-core: fix build

rocmPackages.rpp-opencl: mark broken

rocmPackages.rocgdb: fix build

rocmPackages.migraphx: fix build

rocmPackages.llvm: remove unneeded duplicate patch

rocmPackages.rdc: fix build
Fixes the build against rocmPackages_6

Can't easily apply the PR as a patch because we rely on the tarball with pregenerated
hipified files ∴ fetchpatch of the PR will apply cleanly but fail to build
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: closure size The final size of a derivation, including its dependencies 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 6.topic: python 6.topic: rocm 8.has: changelog 8.has: clean-up 8.has: documentation This PR adds or changes documentation 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 101-500 10.rebuild-linux: 501-1000 10.rebuild-linux: 501+
Projects
None yet