-
题名基于ARM的硬件压缩算法在Spark中的性能研究
- 1
-
-
作者
朱常鹏
汤景仁
梁昀
张小川
韩博
赵银亮
-
机构
重庆理工大学数据科学与大数据系
华为科技有限公司
西安交通大学网络空间安全学院
西安交通大学计算机科学与技术学院
-
出处
《计算机学报》
EI
CAS
CSCD
北大核心
2023年第12期2626-2650,共25页
-
基金
鲲鹏众智计划中的Spark使能KAE压缩项目(OAA21091100464724D)
国家留学基金委员会(201708505099)
国家自然科学基金(61702063)资助。
-
文摘
鲲鹏920 CPU是2021年面世、全球第一款基于7纳米制造工艺的ARM 64位CPU,该CPU内置一个名为KAEzip的硬件加速引擎,其核心是一个硬件压缩算法,能通过硬件提升压缩与解压缩性能.相关研究表明,压缩算法的硬化与传统软件压缩算法相比具备明显性能优势.但大数据领域中的基础性系统软件都无法识别和使用这类算法.因此研究评估硬件压缩算法在大数据环境下的性能,发现揭示制约这类算法性能的关键因素以及可能存在的缺陷具有重要意义.为此,本文首先提出一种基于“生产-消费”模型的Spark任务性能模型,形式化地表示多维资源、压缩算法和Spark任务性能之间的内在关系,从理论上分析揭示出Spark下影响压缩算法性能的关键因素.然后提出一种三层架构支持Spark识别使用硬件压缩算法.这种分层架构为进一步调优硬件压缩算法在Spark中的性能提供了灵活性,也能复用到其他大数据系统软件.在此基础上本文以KAEzip为实验对象,使用经典Spark基准测试程序全面评估它在Spark中的性能,结合性能模型分析挖掘制约KAEzip性能的关键因素与根源.对KAEzip的测试表明:(1)硬件压缩算法可有效提升Spark性能。比如,KAEzip比snappy有最多13.8%的压缩性能优势、最多7%的解压优势和最多5.7%的实际应用场景下的性能优势;(2)磁盘的数据传输率与硬件压缩算法性能之间的不匹配是制约硬件压缩算法性能的重要因素;(3)压缩算法在Spark中的运行机制更易导致CPU的数据处理能力与硬件压缩算法性能不匹配,也制约着硬件压缩算法的性能.测试结果也表明KAEzip在压缩小数据时会导致数据膨胀问题.为此,本文扩展三层架构分析揭示出导致该问题的根源,并结合压缩算法在Spark中的运行机制提出一种优化方法.硬件压缩算法作为压缩算法领域的新研究方向,本文的研究工作不仅可广泛用于优化内置于CPU中的硬件压缩算法在Spark下的性能,也有助于持续演化完善KAEzip和鲲鹏920 CPU.
-
关键词
鲲鹏920
CPU
kaezip
大数据
SPARK
硬件压缩算法
根源分析
-
Keywords
Kunpeng 920
kaezip,big data
Spark
hardware-based compression algorithms
root cause analysis
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-