文档名:跨语言用户态文件系统框架读写性能优化
摘要:以深度学习为代表的数据分析应用越来越多依赖分布式文件系统存储管理大规模数据集.为了增强数据访问的兼容性,现有分布式文件存储系统通常需提供标准POSIX接口,以支持深度学习等应用的无缝对接.然而,以内核模块形态开发提供POSIX接口的文件系统非常复杂耗时.近年来,用户态文件系统(FilesysteminUser-space,FUSE)框架大幅简化了文件系统的开发工作,已被Alluxio和Ceph等诸多知名分布式文件系统使用.目前常用的用户态FUSE库libfuse仅提供C语言编程接口,但现有大数据分布式文件系统基本都是基于Java语言开发的(例如HDFS和Alluxio等),为了使基于Java语言开发的分布式文件系统可以对接C语言开发的FUSE库,需采用跨语言FUSE框架作为中介.跨语言FUSE框架利用跨编程语言的函数回调机制,使操作系统FUSE库的C语言函数可以跨语言的调用分布式文件系统提供的Java语言编程接口,从而为大数据分布式文件系统提供标准POSIX接口的访问能力.但在数据密集型应用中,现有跨语言FUSE框架的执行效率低,导致数据密集型作业(深度学习、大数据分析等)中数据I/O耗时占据了显著的性能开销,成为新的潜在性能瓶颈.针对此问题,本文首先评估分析了重要且广为使用的跨语言FUSE框架JNR-FUSE的性能,发现并定位其在高并发和小文件场景下存在的性能瓶颈;接着从多方面剖析性能瓶颈根因,进而总结出高效跨语言FUSE框架的性能优化方向,并面向Java语言设计实现了跨语言FUSE框架JNI-FUSE.JNI-FUSE利用延迟分离和元信息缓存等优化技术降低跨语言函数回调开销,从而提升跨语言FUSE框架的性能.实验结果表明,对比当前性能最好的JavaFUSE框架JNR-FUSE,本文提出的JNI-FUSE带来了1.15~6.04倍的FUSE框架性能提升和1.90~2.71倍的文件系统端到端性能提升,并为上层深度学习训练任务带来了1.06~1.73倍的训练加速.本文设计提出的JNI-FUSE(JavaNativeInterface-FilesysteminUserSpacE)因性能优势,已被知名开源分布式文件系统Alluxio官方接受集成.
作者:顾荣 罗义力 仇伶玮 王肇康 戴海鹏 黄宜华 Author:GURong LUOYi-li QIULing-wei WANGZhao-kang DAIHai-peng HUANGYi-hua
作者单位:计算软件新技术国家重点实验室(南京大学),江苏南京210023;南京大学计算机科学与技术系,江苏南京210023南京大学计算机科学与技术系,江苏南京210023计算软件新技术国家重点实验室(南京大学),江苏南京210023;南京航空航天大学计算机科学与技术学院,江苏南京211106
刊名:电子学报 ISTICEIPKU
Journal:ActaElectronicaSinica
年,卷(期):2023, 51(6)
分类号:TP31
关键词:POSIX 用户态文件系统 跨语言 性能优化 Java原生接口
Keywords:portableoperatingsysteminterface user-spacefilesystem cross-language performanceoptimization javanativeinterface
机标分类号:TP316.89TN915.04TP274
在线出版日期:2023年9月8日
基金项目:跨语言用户态文件系统框架读写性能优化[
期刊论文] 电子学报--2023, 51(6)顾荣 罗义力 仇伶玮 王肇康 戴海鹏 黄宜华以深度学习为代表的数据分析应用越来越多依赖分布式文件系统存储管理大规模数据集.为了增强数据访问的兼容性,现有分布式文件存储系统通常需提供标准POSIX接口,以支持深度学习等应用的无缝对接.然而,以内核模块形态开发...参考文献和引证文献
参考文献
引证文献
本文读者也读过
相似文献
相关博文
跨语言用户态文件系统框架读写性能优化 Reading and Writing Performance Optimization of Cross-Language FUSE Framework
跨语言用户态文件系统框架读写性能优化.pdf
- 文件大小:
- 3.21 MB
- 下载次数:
- 60
-
高速下载
|
|