JavaScript并行化性能提升的研究与实现

被引量 : 0次 | 上传用户:fdahofafh
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
当前,脚本语言的执行速度是限制网络应用进一步发展的主要因素之一。JavaScript作为网络编程中主要使用的脚本语言,其性能提升对开发计算密集型Web应用意义重大。目前,针对JavaScript引擎优化的研究已经很多,而针对JavaScript语言本身的并行化性能提升却仍未出现完善的解决方案。本文针对这一新兴领域,从不同角度进行了研究与探索,对提高浏览器性能具有重要的实际意义。本文首先介绍了JavaScript语言的特点与并行化编程的方法,并详细介绍了Chromium浏览器的多线程架构与沙箱机制。接着,本文以Chromium浏览器为载体,通过在WebKit引擎中新增模块的方式,设计并实现了基于WebKit的JavaScript并行化扩展,在JavaScript层进行函数解析和翻译,在C++层调用OpenCL库进行并行计算,并通过IDL语言将模块绑定到V8引擎。同时,本文针对网络语言的安全性和兼容性需求,对系统流程进行了调整与优化,在渲染进程启动初期完成环境预配置工作,以满足Chromium的沙箱模型,避免恶意代码的攻击;并对OpenCL链接库采用动态加载方式,设计了完善的容错机制,确保系统能在不同的平台上编译与使用。在实现了JavaScript并行扩展后,本文对JavaScript引擎内部机制进行了分析,基于V8引擎本身从另一角度进行了探索,设计了在V8内部实现JavaScript并行机制的整体框架与流程,改进了并行接口并设计了合适的数据分解模式。此外,本文为V8引擎增加了线程池模块,实现了主从线程的同步协作,并通过延迟创建线程的方式避免了不必要的系统开销。最后,本文针对实现的JavaScript并行系统,通过实际的JavaScript程序进行了性能测试,并详细分析了处理器核心数目、数据规模、运行次数以及程序自身可并行程度对JavaScript并行化性能提升的影响,最后给出了本文实现的并行系统的使用场景。本文实现的JavaScript并行化系统,能够显著提高计算密集型JavaScript程序的运行速度,帮助开发者编写具备更复杂能力的Web应用,提高用户体验,具有一定的实用价值。
其他文献
移动互联网时代背景下,整个社会都在急剧转型变化,包括高校。高校图书馆是高校的重要部门之一,承担着比较重要的教学和科研任务,也是学校的信息服务和资源共享中心。利用计算机及
银行经营首要控制风险。柜面业务作为商业银行的一项基础性工作,涉及业务范围广,隐藏风险点众多,一直是银行实现稳健经营的控制重点。加强柜面业务检查与管理,有效防范并控制柜面
根据已进行的三次全国口腔健康流行病学调查报告显示,龋病依然是影响我国居民口腔健康的主要疾病,基本覆盖各个年龄层且大多数龋齿没有得到治疗,在过去30年龋病患病状况基本比较
为缓解华北水资源短缺问题,寻求代替水源,进行了微咸水和再生水灌溉条件下不同灌水量对盆栽棉花土壤理化性质和棉花根系影响的试验。试验设置灌水水质和灌水量2个试验因素,灌
水平井技术作为油田开发中的一项重要技术,已在老油田调整挖潜、新油田产能建设、实现少井高效开发等方面的得到了广泛的推广应用。随着开发时间的延长,水平井生产也逐渐暴露出
随着网络的发展,各类网络社交平台已经成为人们发表自己观点、与他人交流的重要平台。基于社交网络的舆情分析也成为了一个研究热点,然而现有的舆情分析研究很少有基于校园BBS
被广泛使用的线性调制技术和快速发展的4G蜂窝移动通信系统都对射频功率放大器的线性度提出了非常严格的要求。由于线性调制信号包络不是恒定的,射频功放的非线性将使其对这类
近年来,“看病难,看病贵”问题成为了我国政府及普通群众都十分关注的焦点、热点问题,要想得到有效解决,制定合理的医疗服务价格是其中很重要的一方面。合理的医疗服务价格是调节
《劳动合同法》的出台意味着劳动法律规制的强化,劳动法律环境的改善,这对整个劳动关系的协调和稳定具有积极的促进作用。但是在该法实施以来,受国际金融危机的影响,劳动关系领域
SNPs遗传分子标记的开发和应用是数量性状和群体遗传学研究聚焦的关键点。RAD简化基因组测序技术是近年来基于限制性酶切的简化基因组高通量测序技术进行SNP开发最为有效、经