You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

为何Android设备可运行大参数LLM?内存限制矛盾解析

矛盾的核心原因拆解
  • 老旧内存限制已过时:你了解的256MB应用内存限制是早期Android版本(如Android 4.x及以前)针对低配置设备的旧设定,现在主流Android设备(尤其是近5年的机型)的单应用内存上限远高于这个数值,中高端机型甚至能给到8GB以上的单应用可用内存。

  • Termux的运行环境特殊性:Termux并非普通Android应用,它提供完整的Linux用户空间环境,运行在这个环境里的程序(比如Ollama)绕过了普通Android应用的沙箱内存限制,能更直接调用系统剩余内存资源,只要设备物理内存足够,就能分配到大量内存。

  • LLM的量化压缩技术:数十亿参数的LLM并非以全精度(FP32)运行,现在主流部署都会用4位、8位量化技术,把模型体积压缩到原来的1/4或1/2。比如13B参数的全精度模型约占52GB内存,4位量化后仅需6.5GB左右,很多现代Android设备的物理内存(8GB及以上)完全能容纳。

  • Android动态内存调度:Android系统会根据当前内存使用情况动态调整各进程的可用内存,当后台没有高内存占用的应用时,会优先给需要大量内存的进程(比如运行LLM的进程)分配更多资源,不会严格卡死所谓的“固定上限”。

内容的提问来源于stack exchange,提问作者Carter Wang

火山引擎 最新活动