首页
/ rclone mount 挂载指南:在 Linux、macOS、Windows 与 OpenBSD 上把云存储挂载为本地文件系统

rclone mount 挂载指南:在 Linux、macOS、Windows 与 OpenBSD 上把云存储挂载为本地文件系统

2026-09-06 14:25:44作者:沈韬淼Beryl

rclone 的 mount 命令可以把任意受支持的云存储(S3、Google Drive、Dropbox、OneDrive、Azure Blob、B2 等)通过 FUSE 挂载为本地文件系统,让操作系统像访问本地磁盘一样访问云端文件。本文以仓库中的官方挂载文档 cmd/mountlib/mount.md 为主体,结合 cmd/mountlib/mount.gocmd/mount/mount.gocmd/nfsmount/nfsmount.gofs/mount_helper.go 等源码实现,系统讲解各平台的挂载方式、Windows 网络盘模式与权限模型、systemd 集成以及 mount 作为 Unix 挂载辅助程序的用法。读完本文,你可以掌握跨平台挂载 rclone 远端的完整操作流程、挂载参数背后的默认值来源,以及生产环境中以 systemd/fstab 方式自动挂载的配置方案。

需要说明的一个细节:cmd/mountlib/mount.md 中出现的 rclone @ 并不是拼写错误,@ 是命令名占位符——cmd/mountlib/mount.go 中的 help() 函数会用实际命令名(如 mountcmountnfsmount)替换该占位符,因此本文下文中统一写为 rclone mount,其余挂载命令同理。

挂载前的准备与基本用法

挂载前先用 rclone config 配置好远端,并用 rclone ls 等命令确认远端可访问。

  • Linux 与 macOS 上,mount 默认以前台模式运行,使用 --daemon 标志可切换到后台(守护)模式;Windows 只支持前台模式,该标志会被忽略。
  • 后台模式下 rclone 表现得像一个通用的 Unix 挂载程序:主程序启动后派生一个后台 rclone 进程来建立并维持挂载,等待其成功或超时后以相应退出码结束(若子进程失败则将其终止)。

在 Linux/macOS/FreeBSD 上,挂载点必须是一个已存在且为空的目录:

rclone mount remote:path/to/files /path/to/local/mount

在 Windows 上,前台模式挂载会占用当前控制台窗口(rclone 需要持续服务该挂载),因此操作挂载点要另开一个窗口,直到通过 Ctrl-C 等中断 rclone。

挂载结束后:

  • 前台模式下,程序收到 Ctrl-C(或 SIGINT/SIGTERM 信号)时挂载会自动解除;
  • 后台模式下需要用户手动解除挂载:
# Linux
fusermount -u /path/to/local/mount
# ... or on some systems
fusermount3 -u /path/to/local/mount
# OS X or Linux when using nfsmount
umount /path/to/local/mount

当挂载点被其他进程占用(busy)时解除操作可能失败,此时需要用户自行找出并停止占用进程后手动卸载。

从源码看,前台/后台流程的骨架在 cmd/mountlib/mount.goMount() 中:指定 --daemon 时先调用 daemonize.StartDaemon(os.Args) 派生后台进程;随后创建 VFS 实例并调用 MountFn 真正建立挂载。cmd/mountlib/mount.goWaitMountReady() 则以 100ms 的轮询间隔检查挂载就绪状态与守护进程存活情况——这正是文档中“等待成功或超时”行为的实现。

挂载文件系统的容量报告

挂载点显示的文件系统大小与 rclone about 命令返回的信息一致。规则是:

  • 若远端容量不受限、只能报告已用量,则额外假设 1 PiB 的剩余空间;
  • 若远端完全不支持 about 特性,则总量与剩余量都按 1 PiB 计。

这一点在 vfs/vfs.go 中有直接对应:unknownFreeBytes = 1 << 50,注释明确写着“若总容量未知,则以该值(1 PiB)作为剩余空间目标值”。Statfs() 会按 DirCacheTime 间隔缓存这部分容量信息。

Windows 安装与挂载模式

安装 WinFsp

在 Windows 上运行 rclone mount 需要安装 WinFsp——一个开源的 Windows 文件系统代理(Windows File System Proxy),它提供 rclone 所依赖的 FUSE 模拟层,配合 cgofuse 使用。

固定盘与网络盘两种模式

与其他操作系统不同,Windows 对网络盘和固定盘提供不同的文件系统类型:系统假定固定盘快速可靠,而网络盘延迟较高、可靠性较低,并据此进行差异化优化(例如资源管理器在网络盘上不生成图片/视频缩略图,只显示图标)。

大多数情况下 rclone 默认以固定盘模式挂载远端;若以固定盘模式遇到程序报错、冻结或其他异常,可以考虑改用网络盘(network share)模式挂载。

固定盘模式支持三种挂载目标(* 表示从 Z: 开始向前自动分配下一个可用盘符):

rclone mount remote:path/to/files *
rclone mount remote:path/to/files X:
rclone mount remote:path/to/files C:\path\parent\mount

其中挂载到路径时,父目录(或驱动器)必须存在,而挂载目标目录本身不得存在;网络盘模式不支持挂载到目录路径(这是 Windows 对接口的限制)。

--volname 可为挂载的文件系统设置自定义卷名,默认使用远端名加路径。

网络盘模式通过追加 --network-mode 开启,此时远端必须挂载到盘符:

rclone mount remote:path/to/files X: --network-mode

--volname 指定的卷名会用于构造网络共享路径:完整的 UNC 路径(如 \\cloud\remote,也可带额外路径段)会原样使用;其他字符串则作为共享名,前缀默认的 \\server\。未指定卷名时默认使用 \\server\share。同时挂载多个盘时卷名必须唯一,否则挂载命令会失败。共享名会作为映射驱动器的卷标签显示在资源管理器中,而完整的 \\server\share 会被 net use 等工具报告为远程 UNC 路径,与普通网络驱动器映射一致。

文档给出了两组等价写法,体现了“UNC 路径会隐式启用网络模式”的规则:

rclone mount remote:path/to/files X: --network-mode
rclone mount remote:path/to/files X: --volname \\server\share
rclone mount remote:path/to/files \\cloud\remote
rclone mount remote:path/to/files * --volname \\cloud\remote

第二种等价形式中,直接把 UNC 路径作为挂载点,rclone 会自动分配盘符(如同 *),并把该 UNC 路径用作卷名,效果等价于用 --volname 指定。

还有一种更底层的方式:直接传递 libfuse/WinFsp 原生选项 --fuse-flag --VolumePrefix=\server\share(注意此处路径只带单个反斜杠前缀)。在旧版本 rclone 中这是唯一的网络模式配置方法。

这些选项在源码中的登记位置见 cmd/mountlib/mount.govolname 支持 Windows 与 macOS,network_mode 仅支持 Windows。

Windows 文件系统权限

Windows 的 FUSE 模拟层需要在 FUSE 使用的 POSIX 权限模型与 Windows 基于 ACL(访问控制列表)的权限模型之间做转换:

  • 挂载的文件系统通常会在 ACL 中获得三条条目,分别对应 POSIX 的 Owner、group、others 权限域;默认 Owner 与 group 取当前用户,others 用内置组 “Everyone” 表示,可通过 FUSE 选项 UserNameGroupName 自定义(如 -o UserName=user123 -o GroupName="Authenticated Users");
  • 各条目的权限由 --dir-perms--file-perms 控制,取值为传统的 Unix 数字权限记法;
  • 默认权限等价于 --file-perms 0666 --dir-perms 0777,即所有人可读可写。这意味着无法从挂载中直接运行程序——需要加执行权限,例如 --file-perms 0777 --dir-perms 0777
  • 若程序需要写文件,通常还要同时启用 VFS 文件缓存(见下文“限制”一节)。

文档特别解释了权限映射中两个容易“看走眼”的现象:

  1. 当 group 或 others 的权限包含写权限时,实际映射出的是 “write attributes”、“write data” 和 “append data” 三个具体权限,但不含 “write extended attributes”。Windows 因此把该组合显示为基础权限 “Special” 而非 “Write”(因为 “Write” 还包含 “write extended attributes”);
  2. 即使为 group 或 others 设置 0(无权限),它们仍会得到 “read attributes”、“read extended attributes” 和 “read permissions” 三个只读权限——这是出于兼容性考虑,允许无额外权限的用户读取文件的基本元数据,与 Unix 行为一致。

WinFsp 2021(1.9 版)引入了新的 FUSE 选项 FileSecurity,允许用 SDDL(安全描述符字符串格式)完整指定文件安全描述符,从而获得比 POSIX 权限映射更精细的控制,且不会自动附加兼容性权限。文档给出了两个典型用例:

  • 若用 --file-perms 0600 --dir-perms 0700 只允许 Owner 访问,group 和 “Everyone” 仍会得到上述的特殊只读权限,某些程序(如 SSH 客户端)会据此误报 “unprotected private key file”。可指定 -o FileSecurity="D:P(A;;FA;;;OW)" 将文件完全访问(FA)仅授予 Owner(OW);
  • 除 Owner 外,通过 POSIX 权限设置的写权限不含 “write extended attributes”,可能导致应用写入文件时收到 permission denied。为内置 “Everyone” 组设置可用的写权限可用 -o FileSecurity="D:P(A;;FRFW;;;WD)"(文件读 FR + 文件写 FW 授予 WD);如需执行权限改为 -o FileSecurity="D:P(A;;FRFWFX;;;WD)";需要含删除在内的完全访问则用 -o FileSecurity="D:P(A;;FA;;;WD)"

Windows 使用注意事项

  • 以管理员身份创建的盘对其他账户不可见,即使是通过 UAC 提升的管理员账户也不行。典型现象:从管理员命令行挂载盘符后,在普通权限的资源管理器中看不到该盘。若不需要从提权应用访问该盘,最简单的办法是始终使用非提权的命令行创建挂载;
  • 若需要让创建该盘的账户无论是否提权都能访问映射盘,可以启用 Windows 的 linked connections 设置;
  • 也可以让挂载对整个系统可见:以内置 SYSTEM 账户运行创建挂载的进程,方式包括 Sysinternals 的 PsExec(-s 选项)、配置为 SYSTEM 账户的计划任务或 Windows 服务,以及 WinFsp 的 Launcher 服务架构。注意:以其他用户身份运行时,必须用 --config 选项显式指定配置文件;且此时 Owner 权限归 SYSTEM 账户,其他账户按 group/others 权限域处理(因此可能缺少 “write extended attributes” 权限,可用上述 FileSecurity 方案规避);
  • 映射到目录路径(而非盘符)不受上述限制。

macOS 挂载:NFS、macFUSE 与 FUSE-T

macOS 上挂载有三种途径:内置 NFS 服务器(rclone nfsmount)、macFUSE(传统 FUSE 驱动,基于 macOS 内核扩展 kext),或 FUSE-T(通过本地 NFSv4 服务器“挂载”的替代 FUSE 实现)。

Unicode 规范化:文档强烈建议 macOS 上所有 mount/serve 命令保持 --no-unicode-normalization=false 的默认值,原因与 VFS 的大小写敏感性行为相关。

NFS 挂载:在 macOS 等支持该路径的平台上,推荐直接使用 rclone nfsmount 命令——它会启动 NFS 服务器并完成挂载,一步到位;rclone mount 本身仍走 FUSE(macFUSE/FUSE-T),并不会通过标志切换到 NFS。若以 --daemon 后台模式运行,停止挂载需要向 rclone 进程发送 SIGTERM 信号。注意 --nfs-cache-handle-limit 控制 NFS 挂载缓存处理器中缓存文件句柄的上限,默认 1000000,设置过低会导致访问文件时出错;若服务器资源占用过高才考虑调低。

从源码看,cmd/nfsmount/nfsmount.go 展示了 nfsmount 的实现:先在进程内创建 nfs.NewServer 并异步 Serve(),由于端口是服务启动后随机分配的,需要查询实际端口号后再拼接挂载命令;卸载时 macOS 走 diskutil umount force,其他平台走 umount -f(见 cmd/nfsmount/nfsmount.go)。该命令在 cmd/nfsmount/nfsmount.go 中标注为 v1.65 引入的实验性命令。

macFUSE 安装:若通过官网 dmg 包安装 macFUSE,rclone 会自动定位其库文件;若用 macports 安装,则需手动建立符号链接:

sudo mkdir /usr/local/lib
cd /usr/local/lib
sudo ln -s /opt/local/lib/libfuse.2.dylib

FUSE-T 的局限(基于 FUSE-T 1.0.14):

  • 读取时更新 ModTime:按 FUSE-T 官方说明,NFS 客户端无法单独设置访问时间和修改时间,两者总是被一起修改。这意味着用 macOS Finder 等工具查看文件会导致 rclone 更新文件的修改时间,进而可能触发 rclone 上传一份完整的文件新副本;
  • 只读挂载:使用 --read-only 挂载时,写入尝试会静默失败,不像 macFUSE 那样给出明确警告。

Linux 挂载

在较新的 Ubuntu 上运行 rclone mount 可能遇到:

NOTICE: mount helper error: fusermount3: mount failed: Permission denied CRITICAL: Fatal error: failed to mount FUSE fs: fusermount: exit status 1

这可能源于新版 AppArmor 的限制,可先用 sudo apt install apparmor-utils(如未安装),再执行 sudo aa-disable /usr/bin/fusermount3 禁用相关规则。

Linux 上 FUSE 挂载的底层实现在 cmd/mount/mount.go:先经 mountlib.CheckOverlapCheckAllowNonEmpty 检查后调用 fuse.Mount,再通过 bazil.org/fuseNewFS/Serve 在后台服务挂载点,并以 fuse.Unmount 作为卸载函数返回。mountOptions() 把命令行选项翻译为 fuse 选项,包括 MaxReadahead(默认 128 KiB)、AsyncReadAllowOtherWritebackCacheReadOnly(当 VFS 只读时)等。值得注意的是,--allow-root 在该 FUSE 后端上已被忽略(上游移除支持),而 -o/--option--fuse-flag 会直接报错——这两个选项主要服务于 WinFsp 平台。

OpenBSD 挂载:portmap、mount_nfs 与 AUTH_UNIX

OpenBSD 上 rclone nfsmount 同样通过 serve nfs 起 NFS 服务器,再用系统 mount_nfs(8) 完成挂载——与 macOS 的 NFS 挂载方法相同。OpenBSD 没有基于 FUSE 的挂载选项,因此 nfsmount 是那里把 rclone 远端挂载为本地文件系统的唯一途径。源码层面,cmd/nfsmount/nfsmount.go 专门处理了 OpenBSD 分支:因为 mount_nfs(8) 不认识 -o mountport=-o tcp,且 TCP 需用 -T 标志请求,所以 OpenBSD 上直接调用 mount_nfs 并传 -o port=<port> -T,其他平台则走通用路径(-o port= -o mountport= -o tcp)。

若手工操作 serve nfs 导出,还需要注意:

portmap 注册。OpenBSD 内核 NFS 客户端通过系统 portmapper 定位 mountd,而非连接固定端口,所以 rclone 的进程内 NFS 服务器必须先注册到 portmap 才能被挂载:

rclone serve nfs --addr localhost:<PORT> remote:path

doas rcctl stop nfsd portmap
doas pkill -9 mountd   # mountd can't be stopped via rcctl(8)
doas rcctl -f start portmap
doas rpcinfo -s nfs 3 <PORT>
doas rpcinfo -s mountd 3 <PORT>

<PORT> 替换为 --addr 的端口。端口 2049 也可用,但要求以 root 运行 rclone或在 securelevel 0 下调整 sysctl(8),测试时选非特权端口更省事。

mount_nfs -T 而不是 mount。直接以 -T 标志强制 TCP 挂载导出的 NFS 共享,而不要走通用 mount(8) 包装器——OpenBSD 的 mount(8) 不理解 -T,会报 unknown option -- T

mount_nfs -T localhost:/ /path/to/local/mount

rclone nfsmount 在 OpenBSD 上会自动完成这一步(直接带 -T 调用 mount_nfs),因此只有手工挂载 serve nfs 导出时才需要。

AUTH_UNIX 与已知限制。OpenBSD(及其他 BSD)的内核 NFS 客户端要求服务器在 MOUNT RPC 握手中提供 AUTH_UNIX 认证方式;只提供 AUTH_NULL 的服务器会被拒绝并报 mount_nfs: can't access /: Authentication error。rclone 的 NFS 服务器出于此原因宣告 AUTH_UNIX,但并未在其上实现按用户的访问控制。

限制:写缓存、空目录与平台支持

  • 顺序写限制:不使用 --vfs-cache-mode 时,挂载只能顺序写文件、读取时才能 seek。许多应用无法在没有 --vfs-cache-mode writes--vfs-cache-mode full 的情况下直接在 rclone 挂载上工作。macOS 上使用 NFS 挂载且未指定 --vfs-cache-mode 时,挂载点会是只读的。
  • 空目录:桶型远端(Azure Blob、Swift、S3、Google Cloud Storage、B2)无法存储空目录;其中只有 Azure Blob、Google Cloud Storage 和 S3 在添加 --xxx-directory_markers 后能保留空目录,否则空目录一旦移出目录缓存就会消失。
  • daemon 等待行为:Unix 上以 --daemon 启动 rclone mount 时,主程序会等待后台挂载就绪,超时由 --daemon-wait 控制。Linux 上可通过 ProcFS 检查挂载状态,因此该值实际是最大等待时间,真实等待可能更短;macOS/BSD 上无法检查,等待时间是恒定的,仅在最后检查一次,macOS 上建议把等待时间设置得足够。默认值可在 cmd/mountlib/mount.go 中确认:Linux 为 60 秒,BSD/macOS 为 5 秒,且 macOS 的 --daemon-timeout 默认 10 分钟(macOS 特定的内核选项)。
  • 平台支持:目前仅支持 Linux、FreeBSD、macOS 和 Windows。

rclone mount 与 sync/copy 的可靠性差异

文件系统要求 100% 可靠,而云存储系统距离这一点还很远。rclone sync/rclone copy 通过大量重试来应对不可靠性;rclone mount 无法用同样的方式重试(否则就得对上传做本地副本)。要提升挂载的可靠性,应查看并启用 VFS 文件缓存(--vfs-cache-mode 相关选项,登记在 vfs/vfscommon/options.go 中)。

属性缓存:--attr-timeout 的权衡

--attr-timeout 设置内核缓存目录条目属性(大小、修改时间等)的时间,默认 1s(见 cmd/mountlib/mount.go),这个默认值刚好让缓存时长足以避免内核对 rclone 的回调过于频繁。

理论上,对于内核控制之外可能变化的文件系统,0s 才是“正确”值。但实践中 0s 会引起不少问题:rclone 内存占用过高、无法通过 Samba 对外提供文件、目录列目录时间过长等。内核会按 --attr-timeout 给定的时间缓存文件信息,若远端文件在该窗口内改变长度,可能出现损坏,表现为文件被截断或尾部出现垃圾数据;1s 时这种概率极低但并非不可能,设置越高概率越大。调高到 10s1m 可以显著减少内核回调、提高效率,但会相应增加上述损坏风险。若远端文件不会在 rclone 控制之外变化,则不存在损坏风险。这与 mount.fuse 的 attr_timeout 选项含义相同。

过滤器

rclone 的全部过滤器(--include/--exclude 等)都可以用于选择挂载中可见的文件子集,这一点在 mount 命令注册时体现为 cmd/mountlib/mount.go 中标注的 groups: Filter 命令分组。

systemd 集成

rclone mount 作为 systemd 服务运行时,可以使用 Type=notify:此时服务在挂载点成功建立后才进入 started 状态,依赖该服务的单元能立即看到全部文件和目录(cmd/mountlib/mount.go 中前台挂载成功后即调用 systemd.Notify())。

注意 systemd 运行 mount 单元时不带任何环境变量,包括 PATHHOME。因此波浪号(~)展开不可用,应通过 rclone 参数以绝对路径显式提供 --config--cache-dir;由于挂载需要 fusermount/fusermount3 程序,rclone 在此场景下使用回退 PATH /bin:/usr/bin,需确保 fusermount 位于该 PATH 上。这一回退逻辑在 cmd/mountlib/mount.go 中实现。

把 rclone 用作 Unix 挂载辅助程序

Unix 核心的 /bin/mount 程序在收到 -t FSTYPE 参数后会运行 /sbin/mount.FSTYPE 辅助程序,并把挂载选项以 -o key=val,... 形式传入;Automount(传统版或 systemd 版)行为类似。rclone 默认期望 GNU 风格标志 --key val,要作为挂载辅助程序使用,需把 rclone 二进制符号链接为 /sbin/mount.rclone(可选再加 /usr/bin/rclonefs),例如 ln -s /usr/bin/rclone /sbin/mount.rclone。rclone 会检测该身份并自动转换命令行参数——检测与转换逻辑见 fs/mount_helper.goIsMountHelper()fs/mount_helper.goconvertMountHelperArgs()

配置好后即可执行经典挂载:

mount sftp1:subdir /mnt/data -t rclone -o vfs_cache_mode=writes,sftp_key_file=/path/to/pem

或创建 systemd mount 单元(/etc/systemd/system/mnt-data.mount):

[Unit]
Description=Mount for /mnt/data
[Mount]
Type=rclone
What=sftp1:subdir
Where=/mnt/data
Options=rw,_netdev,allow_other,args2env,vfs-cache-mode=writes,config=/etc/rclone.conf,cache-dir=/var/rclone

可选配 systemd automount 单元(/etc/systemd/system/mnt-data.automount):

[Unit]
Description=AutoMount for /mnt/data
[Automount]
Where=/mnt/data
TimeoutIdleSec=600
[Install]
WantedBy=multi-user.target

或写入 /etc/fstab

sftp1:subdir /mnt/data rclone rw,noauto,nofail,_netdev,x-systemd.automount,args2env,vfs_cache_mode=writes,config=/etc/rclone.conf,cache_dir=/var/cache/rclone 0 0

也可以用经典 Automountd。切记显式提供 config=...,cache-dir=...,以规避 mount 单元运行时没有 HOME 的问题。

挂载选项语法转换规则(源码见 fs/mount_helper.go):按逗号拆分 -o 参数、下划线替换为连字符、加 -- 前缀得到命令行标志;含逗号或空格的选项可用单引号或双引号包裹,外层同类引号内的内层引号需双写。此外有几个特殊选项:

  • env.NAME=VALUE:为挂载进程设置环境变量(Automountd 与 systemd.mount 不允许为挂载辅助程序设置自定义环境变量时的变通手段),如 env.HTTPS_PROXY=proxy.host:3128env.HOME=/root
  • command=cmount:运行 cmount 或其他 rclone 命令,而非默认的 mount
  • args2env:以环境变量而非命令行参数的方式把挂载选项传递给后台挂载辅助程序,从而让 ps/pgrep 看不到敏感信息(对应 fs/mount_helper.goPassDaemonArgsAsEnviron);
  • vv...:转换为相应的 --verbose=N
  • x-systemd.automount_netdevnosuid 等标准挂载选项仅供 Automountd 使用,rclone 会忽略(忽略列表见 fs/mount_helper.gohelperIgnoredOpts)。

另外源码还显示一个细节:挂载辅助程序模式下,默认会自动追加 --daemon(除非显式给出),见 fs/mount_helper.go

小结

rclone mount 把云存储变为本地文件系统的入口,其文档与实现共同覆盖了完整的生产使用路径:Linux 上经 FUSE + systemd/fstab/挂载辅助程序的自动化方案;macOS 上 FUSE 与 NFS(nfsmount)两条路线及各自的坑(Unicode 规范化、ModTime 副作用);Windows 上 WinFsp 固定盘/网络盘双模式、POSIX 到 ACL 的权限映射以及 SDDL 精确控制;OpenBSD 上 portmap 注册与 AUTH_UNIX 握手等细节。理解 cmd/mountlib/mount.go 中的选项默认值、fs/mount_helper.go 的参数转换和 cmd/nfsmount/nfsmount.go 的 NFS 挂载流程,可以帮助你准确定位挂载失败、权限异常或性能问题背后的原因。

主要参考文件:

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
33
18
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.14 K
2.75 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
857
1.35 K
docsdocs
暂无描述
Markdown
897
5.81 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
531
596
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
920
1.84 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.79 K
1.02 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.36 K
1.46 K
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
1.02 K
519
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
548
390