摩尔线程AB100安装torch环境

复制代码
(base) q@q-AIBOOK:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.5 LTS
Release:	22.04
Codename:	jammy
(base) q@q-AIBOOK:~$ uname -m
aarch64
(base) q@q-AIBOOK:~$ mthreads-smi --version
mthreads-smi version is 1.0.1

gpu是AB100

安装torch环境,参考下面这个文章

在 M1000 进行 DeepSeek R1 蒸馏系列模型部署 | 摩尔线程博客中心

都安装上这个whl包,torch、torch_musa、torchaudio、torchvision,如果pip安装,和摩尔本身的硬件不匹配。

这样后续才能安装上Ultralytics

还有一个torchada,https://github.com/MooreThreads/torchada/blob/main/README_CN.md

要安装pip install torchada==0.1.48,这样能和上面的版本匹配上

这个版本组合应该可以gpu加速pt模型,但是gpu加速不了onnx模型。


关于推流

摩尔有个自定义编译的FFmpeg,它支持的是硬件编码器(h264_mtenc)而不是软件编码器libx264,这个自定义编译的FFmpeg不支持-preset和-tune参数

复制代码
测试一
(weuav-musa) q@q-AIBOOK:/usr/local/mt_vaapi$ /usr/local/mt_vaapi/bin/ffmpeg -f lavfi -i testsrc=duration=5:size=1920x1080:rate=25 -c:v h264_mtenc -b:v 2000k -g 25 -f flv rtmp://172.16.10.7:1935/live/8UUXP1400A0YX2-99-0-0-ai-test
ffmpeg version git-2024-10-14-7c2b5677b1 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.2)
  configuration: --enable-libdav1d --enable-cross-compile --cross-prefix=aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a -I/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/../gr_umd_dist/arm64-mtgpu_linux-xorg-release/usr/local/include' --extra-ldflags='-ldrm -lX11 -lxcb -lXau -lXdmcp -lXfixes -lXext -lX11-xcb -lxcb-dri3 -L/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/mt_video_release/libdrm/arm64 -L/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/../gr_umd_dist/arm64-mtgpu_linux-xorg-release/usr/local/lib' --pkg-config=pkg-config --enable-shared --disable-static --pkg-config-flags='--define-variable=prefix=/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/mt_video_release/arm64/2.20' --prefix=/usr/local/mt_vaapi/
  libavutil      57.  0.100 / 57.  0.100
  libavcodec     59.  1.101 / 59.  1.101
  libavformat    59.  3.100 / 59.  3.100
  libavdevice    59.  0.100 / 59.  0.100
  libavfilter     8.  0.102 /  8.  0.102
  libswscale      6.  0.100 /  6.  0.100
  libswresample   4.  0.100 /  4.  0.100
Input #0, lavfi, from 'testsrc=duration=5:size=1920x1080:rate=25':
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 1920x1080 [SAR 1:1 DAR 16:9], 25 tbr, 25 tbn
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (h264_mtenc))
Press [q] to stop, [?] for help
[h264_mtenc @ 0xaaaacc8c3f50] avctx->pix_fmt=26(rgba), rc:-1, ctx=0x0xaaaacc8c42f0, ctx->rc=0x0xaaaacc8e0898
[h264_mtenc @ 0xaaaacc8c3f50] ctx->data_pix_fmt: 26
[h264_mtenc @ 0xaaaacc8c3f50] alloc frame
[h264_mtenc @ 0xaaaacc8c3f50] mtenc_load_libraries
[h264_mtenc @ 0xaaaacc8c3f50] mtenc_setup_device
[h264_mtenc @ 0xaaaacc8c3f50] avctx->pix_fmt=26(rgba), avctx->hw_frames_ctx = 0x(nil), avctx->hw_device_ctx = 0x(nil).
[h264_mtenc @ 0xaaaacc8c3f50] mtenc_setup_encoder
[h264_mtenc @ 0xaaaacc8c3f50] nb_surfaces:2, async_depth:1
trace path : /sys/kernel/debug/tracing/trace_marker_raw
Connecting to pvr device ID: 0 (128)
[h264_mtenc @ 0xaaaacc8c3f50] mtenc_setup_surfaces
[h264_mtenc @ 0xaaaacc8c3f50] mtenc_setup_extradataencode gop:25, bf:1, qp-bpi:26-26-26
Output #0, flv, to 'rtmp://172.16.10.7:1935/live/8UUXP1400A0YX2-99-0-0-ai-test':
  Metadata:
    encoder         : Lavf59.3.100
  Stream #0:0: Video: h264 (Main) ([7][0][0][0] / 0x0007), rgba(pc, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 2000 kb/s, 25 fps, 1k tbn
    Metadata:
      encoder         : Lavc59.1.101 h264_mtenc
[flv @ 0xaaaacc8c3640] Failed to update header with correct duration.691.0kbits/s speed=3.01x    
[flv @ 0xaaaacc8c3640] Failed to update header with correct filesize.
frame=  125 fps= 76 q=-0.0 Lsize=     413kB time=00:00:04.96 bitrate= 682.3kbits/s speed=3.02x    
video:410kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.667127%
[h264_mtenc @ 0xaaaacc8c3f50] ff_mtenc_encode_close
Disconnect from services:
 OK


测试2
(weuav-musa) q@q-AIBOOK:/usr/local/mt_vaapi$ /usr/local/mt_vaapi/bin/ffmpeg -encoders | grep -i "h264\|264"
ffmpeg version git-2024-10-14-7c2b5677b1 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.2)
  configuration: --enable-libdav1d --enable-cross-compile --cross-prefix=aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a -I/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/../gr_umd_dist/arm64-mtgpu_linux-xorg-release/usr/local/include' --extra-ldflags='-ldrm -lX11 -lxcb -lXau -lXdmcp -lXfixes -lXext -lX11-xcb -lxcb-dri3 -L/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/mt_video_release/libdrm/arm64 -L/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/../gr_umd_dist/arm64-mtgpu_linux-xorg-release/usr/local/lib' --pkg-config=pkg-config --enable-shared --disable-static --pkg-config-flags='--define-variable=prefix=/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/mt_video_release/arm64/2.20' --prefix=/usr/local/mt_vaapi/
  libavutil      57.  0.100 / 57.  0.100
  libavcodec     59.  1.101 / 59.  1.101
  libavformat    59.  3.100 / 59.  3.100
  libavdevice    59.  0.100 / 59.  0.100
  libavfilter     8.  0.102 /  8.  0.102
  libswscale      6.  0.100 /  6.  0.100
  libswresample   4.  0.100 /  4.  0.100
 V....D h264_mtenc           MOORE THREADS MTENC H.264 encoder (codec h264)
 V..... h264_v4l2m2m         V4L2 mem2mem H.264 encoder wrapper (codec h264)
 V....D h264_vaapi           H.264/AVC (VAAPI) (codec h264)

测试3
(weuav-musa) q@q-AIBOOK:/usr/local/mt_vaapi$ /usr/local/mt_vaapi/bin/ffmpeg -hwaccels
ffmpeg version git-2024-10-14-7c2b5677b1 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.2)
  configuration: --enable-libdav1d --enable-cross-compile --cross-prefix=aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a -I/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/../gr_umd_dist/arm64-mtgpu_linux-xorg-release/usr/local/include' --extra-ldflags='-ldrm -lX11 -lxcb -lXau -lXdmcp -lXfixes -lXext -lX11-xcb -lxcb-dri3 -L/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/mt_video_release/libdrm/arm64 -L/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/../gr_umd_dist/arm64-mtgpu_linux-xorg-release/usr/local/lib' --pkg-config=pkg-config --enable-shared --disable-static --pkg-config-flags='--define-variable=prefix=/home/jenkins/workspace/ddk_video_build/image-gr-umd/mt-media-driver/mt_video_release/arm64/2.20' --prefix=/usr/local/mt_vaapi/
  libavutil      57.  0.100 / 57.  0.100
  libavcodec     59.  1.101 / 59.  1.101
  libavformat    59.  3.100 / 59.  3.100
  libavdevice    59.  0.100 / 59.  0.100
  libavfilter     8.  0.102 /  8.  0.102
  libswscale      6.  0.100 /  6.  0.100
  libswresample   4.  0.100 /  4.  0.100
Hardware acceleration methods:
vaapi
相关推荐
无心水1 小时前
【Hermes:进阶调优与性能优化】41、模型选择策略:OpenRouter 多模型切换与成本优化
人工智能·性能优化·mcp协议·openclaw·养龙虾·hermes·honcho
子午1 小时前
道路车辆检测与计数系统~Python+YOLOV8算法+深度学习+人工智能+Web可视化界面
人工智能·python·yolo
周有贵1 小时前
AI视角下广电转型新探索:GEO技术与金鹰卡通初步接洽,解锁传媒AI融合新可能
大数据·人工智能·传媒
2601_957786771 小时前
AI 原生营销矩阵系统:底层安全架构与多模态内容生产技术实现
人工智能·矩阵·安全架构
沪漂阿龙1 小时前
字节跳动大模型面试题深度拆解:项目深挖、SFT 与 RLHF、Claude Code、记忆机制、并发锁与手撕题全攻略
人工智能·面试
Jurio.1 小时前
当 AI 不再只是对话:Codex app 的自动化功能
运维·人工智能·ai·自动化·codex
财经资讯数据_灵砚智能1 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年5月14日
人工智能·python·信息可视化·自然语言处理·ai编程
跨境卫士—小依2 小时前
低值包裹全面计税之后跨境卖家如何重做小额订单承接逻辑
大数据·人工智能·跨境电商·亚马逊·营销策略
沪漂阿龙2 小时前
AI大模型面试题:大模型训练优化全解析——AdamW、Warmup、Annealing、Scaling Law、SFT、RLHF、拒绝采样、PPO 一文讲透
人工智能