论文部分内容阅读
浏览器的评测与优化是自主CPU体系结构之上应用系统的重要研究内容之一。本文以UniCore体系结构为研究平台,以Firefox浏览器为研究对象,分析浏览器的总体架构和依赖环境,对浏览器的评测方法和优化技术进行研究。主要的研究内容及研究成果包括以下三个方面: 1)设计一种基于CPU占用率的Firefox评测方法EM-CPUUR。针对交互操作性能测量中存在的一些问题,EM-CPUUR采用自动化工具模拟人工交互操作,记录浏览器进程的CPU占用率,并分析CPU占用率曲线图,得出交互操作的执行时间。当CPU占用率高于阈值时,操作正在执行,反之,操作已经停止,以CPU占用率高于阈值的持续时间为交互操作的执行时间。实验结果表明,EM-CPUUR满足正确性和可重现性要求,可以有效地对浏览器交互操作的性能进行评测。 2)Firefox浏览器性能剖析与优化。对Firefox进行性能剖析发现,字体库、x系统、Pixman库、以及libc库的占用比例均超过10%,为Firefox的性能瓶颈。针对这些性能瓶颈采取一系列优化方案,包括:修改字体库,避免字体重新解压;关闭X系统的ShadowFB机制;将循环拷贝替换为memcpy;简化双线性插值算法代码,不作图像锯齿处理;优化Firefox的配置。剖析优化后,Firefox的总体性能提升比例约为17%~494%。 3)JaegerMonkey引擎分析与优化。JaegerMonkey为Firefox的JavaScript引擎。本文分析JaegerMonkey引擎的整体架构和工作机制,并在UniCore平台上采用基于方法的即时编译技术优化JaegerMonkey引擎,包括Method编译器、Nitro汇编器、即时编译执行模块。优化后,JaegerMonkey引擎的性能提升比例约为40%。