| かなり時間をかけて取り組みましたが簡単ではなく、それでも最終的に Vulkan を回避して、Cuda+ROCm を同時に使いながら Minimax 2.7 Q4 のようなモデルを実行できるようになりました。 load_tensors: 63/63 レイヤーを GPU にオフロード load_tensors: CUDA0 モデルバッファサイズ = 83650.42 MiB load_tensors: CUDA_Host モデルバッファサイズ = 622.76 MiB load_tensors: ROCm0 モデルバッファサイズ = 40314.35 MiB 主な利点は prefill です。 Windows の場合: rmdir /s /q build cmake -B build -G Ninja ^ -DCMAKE_C_COMPILER="C:/Program Files/AMD/ROCm/6.4/bin/clang-cl.exe" ^ -DCMAKE_CXX_COMPILER="C:/Program Files/AMD/ROCm/6.4/bin/clang-cl.exe" ^ -DCMAKE_HIP_COMPILER="C:/Program Files/AMD/ROCm/6.4/bin/clang-cl.exe" ^ -DCMAKE_PREFIX_PATH="C:/Program Files/AMD/ROCm/6.4" ^ -DHIP_ROOT_DIR="C:/Program Files/AMD/ROCm/6.4" ^ -DGGML_HIP=ON ^ -DGGML_CUDA=ON ^ -DGGML_BACKEND_DL=ON ^ -DGGML_CPU_ALL_VARIANTS=ON ^ -DGGML_AVX_VNNI=OFF ^ -DGGML_AVX512=OFF ^ -DGGML_AVX512_VBMI=OFF ^ -DGGML_AVX512_VNNI=OFF ^ -DGGML_AVX512_BF16=OFF ^ -DGGML_AMX_TILE=OFF ^ -DGGML_AMX_INT8=OFF ^ -DGGML_AMX_BF16=OFF ^ -DCMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.1/bin/nvcc.exe" ^ -DCMAKE_CUDA_ARCHITECTURES="120" ^ -DCMAKE_BUILD_TYPE=Release ___________________ cmake --build build -j _______________________ 残念ながらこのフラグ:-DGGML_CPU_ALL_VARIANTS=ON --> は多くのコンパイルエラーを作ってしまい、例えば次のように編集して対応しました: notepad C:\\llm\\llamacpp\\ggml\\src\\CMakeLists.txt そして # ggml_add_cpu_backend_variant(alderlake SSE42 AVX F16C FMA AVX2 BMI2 AVX_VNNI) を削除します Ryzen 5950x では問題ありません。 その後: set PATH=C:\\Program Files\\AMD\\ROCm\\6.4\\bin;%PATH% llama-server.exe --model "H:\\gptmodel\\unsloth\\MiniMax-M2.7-GGUF\\MiniMax-M2.7-UD-Q4_K_S-00001-of-00004.gguf" --ctx-size 91920 --threads 16 --host 127.0.0.1 --no-mmap --jinja --fit on --flash-attn on -sm layer --n-cpu-moe 0 --threads 16 --cache-type-k q8_0 --cache-type-v q8_0 --parallel 1 完了。 [リンク] [コメント] |
CUDAとROCmを同時に(-DGGML_BACKEND_DL=ONで)Local LLaMAを動かす方法
Reddit r/LocalLLaMA / 2026/5/1
💬 オピニオンDeveloper Stack & InfrastructureTools & Practical UsageModels & Research
要点
- ユーザーは、-DGGML_BACKEND_DL=ONを設定し、Vulkanを回避することで、CUDAとROCmを同時に使ってLLM(例:Minimax 2.7 Q4)を実行できたと報告しています。
- 彼らは主な性能上の利点として「prefill」段階を挙げており、レイヤーのGPUオフロード状況やCUDA0/ROCm0それぞれのモデルバッファサイズがログ付きで示されています。
- 投稿にはWindowsでのビルド手順が含まれており、CMake/NinjaでROCm側ツールチェーン(clang-cl)を指定し、HIPとCUDAを有効化し、CUDAアーキテクチャやビルド種別を設定しています。
- -DGGML_CPU_ALL_VARIANTS=ONは多くのコンパイルエラーを引き起こし、ggmlのCMakeLists.txtを手動で修正する必要があったと述べられており、Ryzen 5950Xではより問題なく動いたようです。
- 実行手順として、ROCmのPATH設定に加え、llama-serverをコンテキストサイズ、スレッド数、flash-attn、キャッシュ種別、並列性など多くのフラグ付きで起動する方法が提示されています。




