卡卷网
当前位置:卡卷网 / 每日看点 / 正文

用户态文件(fuse)有什么用?

作者:卡卷网发布时间:2025-01-09 18:34浏览数量:83次评论数量:0次

当前,越来越多的文件在用户态开发,提升灵活性和开发效率的同时也带来了一定的性能损耗。与此同时,人工智能技术快速发展,AI模型训练和推理依赖于高效的数据读写作,高性能文件存储成为关键支撑。那么,用户态文件是否适用高性能文件存储场景,满足性能需求呢?

文件为应用程序提供了一个通用接口,极大地简化了应用程序对存储的访问。传上,文件被实现为作内核的一个模块。随着文件复杂度的提升,特别是在分布式文件兴起的背景下,越来越多新的文件转向在用户态进行开发,例如,GoogleFileSystem、HDFS以及开源的GlusterFS和DAOS等文件。

用户态文件具有诸多优势。首先,许多库和编程语言屏蔽了不同平台和内核版本之间的差异,使得用户态程序开发不需要为不同内核进行定制,为开发者提供了更友好的开发环境。其次,用户态程序在出现异常时,其影响范围相对有限,不会像内核态程序那样可能导致整个的崩溃。尽管如此,由于用户态文件增加了额外的开销,关于其开发和使用仍然存在一些争论及权衡。对此,焱融科技进行了系列实验探索,本篇文章为您分享我们关于用户态文件的一些探索实践与思考。

<>有关性能损耗的思考

作内核的VFS层通过提供通用接口,屏蔽了下层各类不同文件的实现差异。在用户态文件的实现中,最常见的方式是通过类似FUSE(目前使用最为广泛的用户空间文件框架)的机制,将内核文件接口导出到用户态。这种方式可以在不改变应用程序使用习惯的前提下,完成用户态文件的访问。

然而,这种方式使得整个文件访问流程更长了。由于文件访问路径变长,内存与CPU等方面的开销增加,从而导致整体资源开销上升,单位资源的访问性能下降。

<>FUSE的性能瓶颈分析

接下来,我们对FUSE的实现流程和性能影响进行一个简单的分析。

FUSEhigh-levelarchitecte

<>FUSE的工作机制

当应用程序执行挂载的FUSE文件作时:

    内核VFS将作路由到FUSE的内核驱动程序;FUSE驱动程序将用户请求提交到FUSE队列中;FUSE用户态守护程序通过队列获取请求并最终处理。

FUSE内核了五个队列,包括Interrupts、forgets、pending、processing和ackground。请求在任何一个时间点只会属于一个队列。

<>基于FUSE实现用户态文件的性能瓶颈主要体现在:

    内核态与用户态切换:频繁的上下文切换导致性能损耗。数据拷贝:从内核态到用户态的数据拷贝也是一个性能瓶颈。队列:FUSE每种队列只有一个实例,了并发处理能力。

这些因素导致FUSE在性能上有不小的损耗,特别是在基于NVMe高性能设备的文件下会呈现出性能瓶颈。

<>VDUSE:用户态文件的新选择

VDUSE(vDPADevinUserspace)作为一种新兴的方法为实现用户态文件提供了一个新的选择。它主要向虚拟机和容器工作负载提供软件定义的存储和网络服务。VDUSE是一种基于软件的vDPA设备,vDPA内核子是其背后的引擎,可以利用vDPA子为虚拟机和容器提供标准接口,对于用户态空间的应用程序非常有用。

vDAP的开发初衷是帮助专用硬件实现virtio协议,其中硬件只需要支持virtio数据平面,vDAP将商特定的控制平面转换为virtio控制平面。VDUSE则将这一机制扩展到用户态,为应用程序提供高效的接口。

VDUSE支持实现多队列,规避了FUSE在队列使用上的。从这一点来看,基于VDUSE实现的用户态文件可以更好地满足小块读写及小文件场景。同时,在容器化场景下,VDUSE可以绕开宿主机器的内核,减少内核态与用户态切换的频率,从而优化整个IO路径上的执行效率。但是,尽管VDUSE可以优化FUSE部分性能短板,但仍有一些方面需要继续优化,例如应用进程到文件进程的数据拷贝开销。

<>焱融存储认为

在高性能文件中,存储集群为大量计算节点提供读写性能,文件客户端为所在计算节点的业务提供服务。在实验探索中,我们发现基于用户态实现的文件客户端,在单客户端性能上会有所下降,但随着计算节点规模增加,存储集群的整体性能仍然可以发挥到极致。

特别是在一些场景下,追求的首要目标是整体的计算能力,反映到存储中也就是的整体性能。在强调整体计算能力的场景中,例如在某些高性能计算任务中,追求的首要目标是最大化计算效率,此时用户态文件完全可以满足需求。综合来看,用户态文件在简化开发和提升灵活性方面具备显著优势,同时为分布式存储和虚拟化场景提供了新的思路。随着数据中心和计算规模的持续扩大,基于用户态实现的文件不仅可以提供了运维的便利性,同时也能更快速地响应业务需求,满足存储用户益复杂的存储访问需求。

END

免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。

卡卷网

卡卷网 主页 联系他吧

请记住:卡卷网 Www.Kajuan.Net

欢迎 发表评论:

请填写验证码