6 Star 0 Fork 10

src-openEuler / fuse3

 / 详情

【master|openeEuler-22.03-LTS-Next】支持extfuse特性

已完成
任务 成员
创建于  
2022-01-05 11:14

【master|openeEuler-22.03-LTS-Next】支持extfuse特性
背景:
用户文件系统与其内核实现相比具有许多优势,例如易于开发和更好的系统可靠性。基于fuse可以很容易实现posix兼容的文件系统开发。然而,用户态文件系统在性能方面的劣势也是比较明显的,例如:频繁的内核态用户态切换,以及数据的多次用户态和内核态拷贝开销。这些对性能损失在基于低速磁盘设备的文件系统或基于低速网络的文件系统来说没有太大影响,但是随着RDMA和高速介质的发展,fuse本身的开销在整体IO开销的占比变得越来越重,这就严重影响了用户态文件系统在更多方面的应用。

实现思路:
extfuse结合ebpf技术,在fuse.ko的读写IO处实现用户态和内核态都可以看到的缓存,通过该缓存来减少 内核态和用户态切换开销 和 数据在内核态和用户态拷贝的开销。从而提升基于fuse的用户态文件系统的性能。

其他说明:
要实现该功能需要涉及两处修改:

  1. 内核态增加特性支持,这部分修改由特性宏开关和mount选项控制,对fuse.ko本身修改量比较少,增加了独立文件进行隔离。
  2. 用户态引入extfuse包,已通过community的评审,pr已合入,待内核合入后进行包的初始化:https://gitee.com/openeuler/community/pulls/3075
  3. fuse3用户包,这部分已经提issue跟踪,待内核合入后进行合入,

评论 (1)

liuzhiqiang 创建了任务

Hi liuzhiqiang26, welcome to the openEuler Community.
I'm the Bot here serving you. You can find the instructions on how to interact with me at Here.
If you have any questions, please contact the SIG: Storage, and any of the maintainers: @zero , @liuzhiqiang , @linfeilong835 , @louhongxiang

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(2)
5329419 openeuler ci bot 1632792936 5592035 liuzhiqiang26 1594357385
1
https://gitee.com/src-openeuler/fuse3.git
git@gitee.com:src-openeuler/fuse3.git
src-openeuler
fuse3
fuse3

搜索帮助