当前位置:首页 > 每日看点 > 正文内容

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

卡卷网10个月前 (01-09)每日看点163

当前,越来越多的文件在用户态开发,提升灵活性和开发效率的同时也带来了一定的性能损耗。与此同时,人工智能技术快速发展,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部分性能短板,但仍有一些方面需要继续优化,例如应用进程到文件进程的数据拷贝开销。

<>焱融存储认为

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

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

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/7728.html

分享给朋友:

相关文章

下班后可以做点什么副业赚钱呢?

下班后可以做点什么副业赚钱呢?

首先说明一下,我分享的任务不需要交钱,也不需要入群,只需要你去平台学习就可以。如果有任何让你交钱,进群的任务,请警惕被割韭菜。今天给大家分享7大赚钱副业,新手小白0粉丝0门槛0技术都可以去做,不说大富大贵,但是赚个零花钱还是可以。如果你已经...

那些极速版软件其存在目的是什么?

那些极速版软件其存在目的是什么?

我看了很多回答,其实都没有回答道点子上。你知道极速版APP为什么叫极速版吗?是他看视频更快吗?显然不是。只是它的安装包体积更小,下载安装速度更快而已,所以叫极速版app。当然啦,现在极速版APP和原声版APP,安装包已经没有区别了,这是因为...

Layui 不更新了么?

Layui 不更新了么?

layui2.8已经于今天正式发布了,新增优化了大量特性,这里按照layui更新日志的模块结构,详细为你一一介绍。基础风格调整新版调整主色调为#16baaa,在原有的墨绿基础上赋予了清新。更简单的构建构建代码更简单,除字体外,只有js和cs...

为什么微服务一定要有网关?

为什么微服务一定要有网关?

网关一句话总结,网关的作用是上浮公共逻辑,下沉差异逻辑。公共逻辑就是所有接口都需要做的事,比如权限校验,限流算法等,这样业务就只需要关心业务逻辑即可。下面是一个对比图: 当然除了一些公共逻辑外,路由也是网关的核心功能,它可以进行流量转发。...

抖音和快手最大的区别是什么?

1、目标人群定位不同抖音:一二线城市,占比52%,大专学历以上,女性偏多。抖音以年轻群体居多。快手:三四线城市,占比64%,高中学历以下,男女更均衡。快手所覆盖的年龄段范围更广。2、内容创作的形式和深度不同抖音:偏深层,内容的装饰及表达更高...

4499 元起的荣耀Magic7 系列实际使用体验怎么样,值得入手吗?

全是软文。。。。。。不过我买了,标准版。为什么买荣耀:屏幕看着舒服,玩游戏选择大屏,超声波指纹解锁。其它,系统、续航、充电、拍照,不是最强,但均衡下来短板都不是很短。其它米OV,IQ、一加,都看了,预算有限,米OV的小屏不感兴趣,OPPO硬...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。