客户Atlas 200产品 RC跑推理模型失败,Device app日志上报Mmap filed 和 Cannot allocate memory错误
2022/08/24
165
问题信息
问题来源 | 产品大类 | 产品子类 | 关键字 |
---|---|---|---|
昇腾伙伴 | 安装部署 | 驱动固件 | Mmap filed、 Cannot allocate memory |
问题现象描述
硬件配置:4G的Atlas 200 AI加速模块(RC模式,驱动版本:21.0.4)+ 客户自研底板
问题现象:客户Atlas 200产品跑推理模型失败,Device app日志上报Mmap filed 和 Cannot allocate memory错误
原因分析
关键过程:
- 查看Device app日志上报Mmap filed 和 Cannot allocate memory错误
[ERROR] KERNEL(3069,Demo_ALL):2018-01-28-16:11:34.828.064 [devmm_api.c:183][drvMemAllocSVMWithInfo 1134][6] Mmap filed. [len=200000, err=Cannot allocate memory]
- 重启后查询内存使用情况(free),内存容量足够
- 重启后查询总进程数(cat /proc/sys/kernel/pid_max)和当前进程数(ps -elf | wc -l ),进程数足够
- 模块默认会设置大页数(8G默认970),重启会恢复默认。经确认,运行当前推理模型需要用到大页内存,查看内存信息(cat /proc/meminfo)发现大页内存面的数量为0
根本原因分析:
更改大页内存数为0,导致推理模型获取不到大页内存上报Mmap filed和Cannot allocate memory
解决措施
临时规避:
设置大页内存面数量,
以root用户执行如下命令:
echo 大页的数量(8G默认970) > /proc/sys/vm/nr_hugepages(重启会恢复)
永久方案:重新制卡
重新制卡指导:https://support.huawei.com/enterprise/zh/doc/EDOC1100244199/de0d3e1a
本页内容