1(计算机体系结构国家重点实验室(中国科学院计算技术研究所) 北京 100190); 2(中国科学院大学 北京 100049); 3(澳大利亚野外机器人中心(悉尼大学) 澳大利亚悉尼 2006); 4(数学工程与先进计算国家重点实验室 江苏无锡 214125) (wangchenxi@ict.ac.cn)
出版日期:
2018-02-01基金资助:
国家“八六三”高技术研究发展计划基金项目(2015AA011505,2015AA015306);国家“九七三”重点基础研究计划基金项目(2016YFB1000402);国家自然科学基金项目(61402445,61672492,61432016,61521092);数学工程与先进计算国家重点实验室开放基金项目(2016A03)Heterogeneous Memory Programming Framework Based on Spark for Big Data Processing
Wang Chenxi1,2, Lü Fang1,4, Cui Huimin1, Cao Ting1, John Zigman3, Zhuang Liangji1,2, Feng Xiaobing1,21(State Key Laboratory of Computer Architecture (Institute of Computing Technology, Chinese Academy of Sciences), Beijing 100190); 2(University of Chinese Academy of Sciences, Beijing 100049); 3(Australia Centre for Field Robotics (University of Sydney), Sydney, Australia 2006); 4(State Key Laboratory of Mathematical Engineering and Advanced Computing, Wuxi, Jiangsu 214125)
Online:
2018-02-01摘要/Abstract
摘要: 随着大数据应用的发展,需要处理的数据量急剧增长,企业为了保证数据的及时处理并快速响应客户,正在广泛部署以Apache Spark为代表的内存计算系统.然而TB级别的内存不但造成了服务器成本的上升,也促进了功耗的增长.由于DRAM的功耗、容量密度受限于工艺瓶颈,无法满足内存计算快速增长的内存需求,因此研发人员将目光逐渐移向了新型的非易失性内存(non-volatile memory, NVM).由DRAM和NVM共同构成的异质内存,具有低成本、低功耗、高容量密度等特点,但由于NVM读写性能较差,如何合理布局数据到异质内存是一个关键的研究问题.系统分析了Spark应用的访存特征,并结合OpenJDK的内存使用特点,提出了一套管理数据在DRAM和NVM之间布局的编程框架.应用开发者通过对本文提供接口的简单调用,便可将数据合理布局在异质内存之中.仅需20%~25%的DRAM和大量的NVM,便可以达到使用等量的DRAM时90%左右的性能.该框架可以通过有效利用异质内存来满足内存计算不断增长的计算规模.同时,“性能/价格”比仅用DRAM时提高了数倍.
参考文献
相关文章 15
[1] | 韩书楷, 熊子威, 蒋德钧, 熊劲. 基于持久化内存的索引设计重新思考与优化[J]. 计算机研究与发展, 2021, 58(2): 356-370. |
[2] | 许丹亚, 王晶, 王利, 张伟功. 基于Spark的大数据访存行为跨层分析工具[J]. 计算机研究与发展, 2020, 57(6): 1179-1190. |
[3] | 申毅杰, 曾丹, 熊劲. 基于收益模型的Spark SQL数据重用机制[J]. 计算机研究与发展, 2020, 57(2): 318-332. |
[4] | 毛海宇,舒继武. 基于3D忆阻器阵列的神经网络内存计算架构[J]. 计算机研究与发展, 2019, 56(6): 1149-1160. |
[5] | 游理通,王振杰,黄林鹏. 一个基于日志结构的非易失性内存键值存储系统[J]. 计算机研究与发展, 2018, 55(9): 2038-2049. |
[6] | HillelAvni, 王鹏. 面向数据库的持久化事务内存[J]. 计算机研究与发展, 2018, 55(2): 305-318. |
[7] | 李龙洋,董一鸿,严玉良,陈华辉,钱江波. Spark环境下基于频繁边的大规模单图采样算法[J]. 计算机研究与发展, 2017, 54(9): 1966-1978. |
[8] | 张鹏,段磊,秦攀,左劼,唐常杰,元昌安,彭舰. 基于Spark的Top-k对比序列模式挖掘[J]. 计算机研究与发展, 2017, 54(7): 1452-1464. |
[9] | 乔百友,朱俊海,郑宇杰,申木川,王国仁. 一种基于Spark的多路空间连接查询处理算法[J]. 计算机研究与发展, 2017, 54(7): 1592-1602. |
[10] | 陆克中,朱金彬,李正民,隋秀峰. 面向固态硬盘的Spark数据持久化方法设计[J]. 计算机研究与发展, 2017, 54(6): 1381-1390. |
[11] | 卞琛,于炯,修位蓉,钱育蓉,英昌甜,廖彬. 内存计算框架局部数据优先拉取策略[J]. 计算机研究与发展, 2017, 54(4): 787-803. |
[12] | 英昌甜,于炯,卞琛,王维庆,鲁亮,钱育蓉. 基于RDD关键度的Spark检查点管理策略[J]. 计算机研究与发展, 2017, 54(12): 2858-2872. |
[13] | 张奋翔,陈华辉,钱江波,董一鸿. HSSM:一种流数据分层次模最大化方法[J]. 计算机研究与发展, 2016, 53(8): 1792-1805. |
[14] | 朱继召,贾岩涛,徐君,乔建忠,王元卓,程学旗. SparkCRF:一种基于Spark的并行CRFs算法实现[J]. 计算机研究与发展, 2016, 53(8): 1819-1828. |
[15] | 王岳青,窦勇,吕启,李宝峰,李腾. DLPF:基于异构体系结构的并行深度学习编程框架[J]. 计算机研究与发展, 2016, 53(6): 1202-1210. |
PDF全文下载地址:
https://crad.ict.ac.cn/CN/article/downloadArticleFile.do?attachType=PDF&id=3627