对于硬件加速,你可以使用ROCm或者Vulkan。Ollama开发者不想整合Vulkan集成,所以如果可以的话最好使用ROCm。它性能稍差一点,但是更容易运行。如果你仍然需要Vulkan,可以在https://github.com/whyvl/ollama - vulkan找到一个分支。#安装 我正在运行Archlinux,所以安装了ollama和ollama - rocm。Rocm依赖会自动安装。你也可以按照https://github.com/ollama/ollama/blob/ddb6dc81c26721a08453f1db7f2727076e97dabc/docs/tutorials/amd - igpu - 780m.md这个指南为其他发行版进行安装。#重写环境变量 如果你有不被支持的GPU,在/etc/systemd/system/ollama.service.d/override.conf中设置HSA_OVERRIDE_GFX_VERSION = 11.0.2,像这样:[Service] Environment = “your env value"然后运行sudo systemctl daemon - reload && sudo systemctl restart ollama.service。对于不同的GPU,你可能需要尝试不同的重写值,如9.0.0,9.4.6,可以搜索它们。#APU修复补丁 在它被合并之前你可能需要https://github.com/ollama/ollama/pull/6282这个补丁。有一个https://gitlab.com/zhaose233/ollama - rocm - package/-/jobs/9282301273/artifacts/browse带有CI的补丁包仓库用于Archlinux。#增加GTT大小 如果你想要用更大的上下文运行大模型,你必须根据https://www.reddit.com/r/LocalLLaMA/comments/1ixy5kf/comment/mfoptfw/?context = 3这个指南设置GTT大小。#Amdgpu内核错误 在高GPU负载期间之后,我遇到了死机和图形重启,dmesg中有如下日志https://gist.github.com/AntonIXO/3f49ce8453766a4c07c8920c4c9d2b01。修复它的唯一方法是用https://lore.kernel.org/lkml/20241127114638.11216 - 1 - [email protected]/T/这个补丁构建一个内核。使用b4 am 20241127114638.11216 - 1 - [email protected]来获取最新版本。结果表明它不能完全修复这个问题。在高负载下amdgpu仍然会崩溃。#性能提示 你也可以设置这些环境变量来获得更好的生成速度:HSA_ENABLE_SDMA = 0;HSA_ENABLE_COMPRESSION = 1;[OLLAMA_FLASH_ATTENTION = 1](https://github.com/ollama/ollama/blob/main/docs/faq.md#how - can - i - enable - flash - attention);[OLLAMA_KV_CACHE_TYPE = q8_0](https://github.com/ollama/ollama/blob/main/docs/faq.md#how - can - i - set - the - quantization - type - for - the - kv - cache)。用OLLAMA_CONTEXT_LENGTH = 16382指定最大上下文(16k,移动上下文 - 更多内存)。OLLAMA_NEW_ENGINE对我不起作用。现在你在你的APU上得到了硬件加速的LLM。用ollama ps和amdgpu_top工具检查它。
讨论总结
原帖主要是关于在Linux系统下,在集成GPU(如Radeon 780M)上运行硬件加速Ollama的指南,包括使用的技术(ROCm或Vulkan)、安装过程、环境变量设置、补丁修复、性能提升等内容。评论者的讨论主题包括对原帖指南表示感谢、询问780M下的速度和模型大小信息、对比koboldcpp和ollama、分享个人使用680m与llm的经验、在Debian系统下安装ROCm的内核版本问题等,整体氛围较为积极,大家都在分享自己的经验和知识。
主要观点
- 👍 对原帖分享的在集成GPU上运行硬件加速Ollama的指南表示感谢。
- 支持理由:原帖提供了实用的操作指南。
- 反对声音:无。
- 🔥 对比koboldcpp和ollama,更倾向于koboldcpp。
- 正方观点:koboldcpp在运行GGUF模型时有优势,不需要像ollama那样使用恼人的解决方法,使用简单且暴露很多API端点。
- 反方观点:无明显反方观点提出。
- 💡 在Debian系统且内核为6.12版本下安装ROCm可能因内核版本问题受阻。
- 解释:内核版本可能不受支持导致安装失败,但如果安装了6.12的backports,nvidia驱动已集成在内核,无需安装amdgpu - dkms。
- 💡 曾经希望680m能用于llm,现在采用直接从源代码构建llama.cpp并使用特定代理的方式。
- 解释:这是一种更手动的方法,但可以正常运行且能使用推测性解码,而推测性解码不会出现在ollama中。
- 💡 在类似设备上,8700G在CPU - only和780M iGPU下,Vulkan Ollama有20%的速度提升。
- 解释:通过测试得出速度提升数据,为他人提供参考。
金句与有趣评论
- “😂 Thanks for this guide!”
- 亮点:简单直接地表达对原帖指南的感谢。
- “🤔 I’ve seen \\~20% increase on a 8700G between CPU - only and 780M iGPU with vulkan ollama.”
- 亮点:给出了具体设备下的速度提升数据,对他人有参考价值。
- “👀 Have you tried koboldcpp? It is my new favorite after a couple of months of using ollama.”
- 亮点:引出了新的软件koboldcpp,并表达自己的偏好,开启新的讨论话题。
- “😎 I prefer running GGUF models at around Q4 and had to use an irritating workaround with modelfiles all the time with ollama.”
- 亮点:指出ollama在运行特定模型时的不足。
- “💡 I’m on Debian with kernel 6.12 and couldn’t install ROCm last month because of unsupported kernel version. I’ll try again tho”
- 亮点:提出在Debian系统下安装ROCm遇到的内核版本问题。
情感分析
总体情感倾向为积极正面。主要分歧点较少,可能是因为这个话题比较专业和具体,大家更多是在分享自己的经验和知识,没有太多的争议性观点。大部分评论者都是在原帖的基础上进行补充或者提问,目的是为了更好地在集成GPU上运行硬件加速Ollama或者分享类似的替代方案。
趋势与预测
- 新兴话题:koboldcpp作为ollama的替代方案可能会引发后续更多的对比和讨论。
- 潜在影响:如果更多人发现koboldcpp在某些方面的优势,可能会影响相关用户在选择本地LLM运行软件时的决策,也可能促使ollama的开发者对软件进行改进优化。
详细内容:
标题:在 Linux 上于集成 GPU(如 Radeon 780M)运行硬件加速 Ollama 的探索
在 Reddit 上,一则关于如何在集成 GPU(如 Radeon 780M)上运行硬件加速 Ollama 的帖子引发了热烈讨论。该帖子获得了众多关注,评论数众多。
帖子主要介绍了实现硬件加速的多种方法,包括使用 ROCm 或 Vulkan ,并指出由于 Ollama 开发者不想合并 Vulkan 集成,所以 ROCm 可能是更好的选择。同时,帖子还详细介绍了安装步骤、环境变量设置、补丁修复、性能提升技巧等方面的内容。
讨论的焦点主要集中在不同方法的性能表现和适用性上。有人分享道:“我在 8700G 上看到,使用 Vulkan 的 Ollama 比仅使用 CPU 大约有 20%的性能提升,但使用 ROCm 没有看到类似的增益。”还有人提供了详细的性能测试数据,比如“ROCm,prompt eval count: 14 token(s),prompt eval duration: 90ms,prompt eval rate: 155.56 tokens/s 等。”
对于不同的方案,大家看法不一。有人表示自己更倾向于使用特定的方案,比如有人提到“我更喜欢使用 koboldcpp,不需要 ROCm 分叉。”也有人选择直接从源代码构建 llama.cpp 。
在这个讨论中,大家的共识是都在努力寻找在集成 GPU 上运行硬件加速 Ollama 的最佳方式。一些独特的观点,如分享自己构建和使用的特殊经验,丰富了整个讨论。
总之,通过这次热烈的讨论,大家对在集成 GPU 上运行硬件加速 Ollama 有了更深入的了解和探索。
感谢您的耐心阅读!来选个表情,或者留个评论吧!