基于WebAssembly的JavaScript性能优化方案研究与实现

来源 :西北大学 | 被引量 : 0次 | 上传用户:mqzhen1987
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网技术的发展,Web程序的应用也日趋广泛,JavaScript所承担的作用也不只是设计之初那样处理简单的DOM交互,更多的是需要为图形处理,物理引擎和虚拟现实等计算密集型操作提供支持。然而JavaScript以易用性为主的设计理念导致其性能上无法高效的应对繁重的处理需求,特别是在计算资源资源有限的平台。因此如何能够有效的提升JavaScript代码的执行效率,这对于网络应用程序的发展至关重要。以往采用的在Web端利用插件实现繁杂密集运算功能的方式由于安全性和代码移植限制等问题逐渐被舍弃。在Web端引入即时编译的技术使得JavaScript的执行性能有了大幅提升,但是优化及退优化操作和额外的内存开销也使其无法高效的应付功能繁杂的应用,在配置资源有限的移动端平台更为显著。为了解决以上方法存在的缺陷,使得Web应用程序拥有更高效的执行效率。我们利用最新的前端字节码技术,实现了一种基于WebAssembly的JavaScript代码性能优化方案。一方面利用WebAssembly对与性能相关的计算密集型代码段进行优化;另一方面利用代码段合并方法减少数据交互过程所带来的的性能开销。本文针对以下几个方面进行研究:(1)对JavaScript性能问题进行深入研究,分析执行效率低下的原因。并且对当前JavaScript代码优化方案进行分析,包括编译技术,变量类型模拟和部分求解器等多种主流的优化方案。详细分析了这些优化方案的基本原理,并且结合产生JavaScript性能缺陷的原因分析优化方案的不足。(2)分析利用WebAssembly对JavaScript进行性能优化的可行性。通过分析WebAssembly的适用范围和设计特点,提出了一个JavaScript代码性能优化方案,讨论了该方案的实现原理。详细说明了代码段转换和代码段合并的设计方法。(3)本文设计并实现原型优化系统JSOPW(JavaScript optimization by WebAssembly)。选择多个实际Web应用程序作为测试用例,同时和现有技术进行对比,收集测试用例在优化前后的时空开销。并且在多浏览器平台上针对优化方案的通用性进行了验证,通过对比评估实验验证了优化方案的有效性。
其他文献
高校医院护理对象具有特殊性,且日益紧张的护理供应和患者需求对护理团队建设提出更高要求。"以人为本"成为护理文化的基础,在护理文化建设中各方面均有体现。作者结合当下高
我国对于失依儿童的照顾主要是由政府兴办的福利院承担。目前多数福利院对失依儿童的生活质量的认知不够,特别是对其心理关爱不足,导致失依儿童的心理需求得不到满足,从而出
<正>随着不同物种基因组序列数据的积累和研究的深入,明确各类序列的功能逐渐成为研究的热点,而多数物种的功能基因组学研究相对滞后,以模式生物进行比较基因组分析为功能基
目的了解湘西少数民族地区健康人群脊髓灰质炎(poliomyelitis,以下简称脊灰)免疫水平及1岁内儿童完成脊灰疫苗基础免疫后的免疫效果,为制定脊灰免疫策略提供科学依据。方法随机
<正> 财政部在2001年6月颁布的《内部会计控制基本规范》,对促进各单位的内部会计控制建设,强化内部会计监督,提高会计信息质量,保证单位资产的安全、完整,确保有关法律及法
会议
】随着我国对于学生的体育学习越来越重视,足球运动作为一项被众多人喜欢的体育运动在国家的大力提倡下有力地推动了足球运动在学校的普及和发展。同时高等职业院校作为我国
<正>目的:研究壳聚糖材料的体外促成骨作用。材料与方法:采用Alizarin红染色法检测使用含或不含HACC的BMP-2溶液处理过的MC3T3-E1细胞,研究HACC对细胞的矿化作用。培养基选用
会议
由于我国学生普遍实验操作能力不足,教育部越来越重视对学生实验操作能力方面的培养,社会也逐渐呈现出对动手能力的强烈需求。为了适应教育的改革以及时代的需求,作为学生物
目的边缘型人格障碍(Borderline Personality disorder,BPD)是一种复杂且严重的精神障碍,它可以导致严重的功能受损、大量医疗资源的占用以及高致死率的自杀行为。而BPD与(Ma