当前位置:主页 > 管理论文 > 移动网络论文 >

基于Blink的WebCL基础模块的设计和实现

发布时间:2018-05-30 00:01

  本文选题:并行计算 + WebCL ; 参考:《中山大学》2015年硕士论文


【摘要】:随着Web应用的推广,对于Web应用的性能要求也随之提高。当前的JavaScript的执行速度成为了Web应用,特别是计算密集型的Web应用的性能提升的一个重要瓶颈,同时也造成了Web应用在性能上和本地化应用的差距。基于此现状,主流的JavaScript引擎都进行了优化,力求达到最优的执行效率来缩小Web应用和本地应用在性能上的差异,例如Google的V8引擎,Mozilla的SpiderMonkey引擎等。但是针对JavaScript引擎的优化都没有改变脚本串行执行这一前提,并没有将并行执行纳入引擎优化的范畴。与此同时,针对于Web领域的并行化研究已经有了多项成果。基于OpenCL的RiverTrail项目,由IntelLabs提出并在Firefox上实现,通过扩展JavaScript语言本身来添加并行功能。2014年3月WebCL标准1.0发布,WebCL是OpenCL在Web上的一个扩展集,允许开发者可以直接接触到GPU,多核CPU等多核设备以进行较大规模的并行编程。本文基于Blink引擎来设计和实现WebCL的基础模块,利用WebCL标准中提供的并行计算的接口和现代多核CPU,GPU等来增加JavaScript的并行化能力,对Web应用特别是计算密集型Web应用进行加速。因此本文所提的解决方案的核心就是基于Blink引擎的WebCL基础模块的设计和实现。本文首先介绍了JavaScript的语言特点和并行化编程的方法,同时,引入对Crosswalk和Blink引擎的介绍。接着,本文以Crosswalk为载体,通过在Blink引擎中增加WebCL模块的方式实现WebCL标准中所规定的基础模块。在模块中利用OpenCL实现WebCL标准所规定的相应的API,并通过WebIDL的方式将WebCL模块绑定到V8引擎。同时,使用WebCL conformance tests来测试每个接口的正确性,确保实现的每一个接口都能够通过测试。然后,本文针对实现的WebCL标准,通过实际的计算密集型的Web应用进行了性能测试,并详细分析了数据规模,程序本身可并行程度对Web应用并行化性能提升的影响。最后给出本文实现的并行系统的应用场景。本文基于Blink和WebCL标准实现的JavaScript并行化系统能够显著提升计算密集型的Web应用的运行速度,提高用户体验,具有很高的研究和实用价值。
[Abstract]:With the popularization of Web application, the performance requirement of Web application is improved. The execution speed of the current JavaScript has become an important bottleneck for the performance improvement of Web applications, especially the computation-intensive Web applications. At the same time, the gap between the performance of Web applications and that of localized applications has been caused. Based on this situation, mainstream JavaScript engines are optimized to achieve optimal execution efficiency to reduce the performance differences between Web applications and local applications, such as Google's V8 engine and Mozilla's SpiderMonkey engine. However, the optimization of JavaScript engine does not change the premise of script serial execution, and does not bring parallel execution into the scope of engine optimization. At the same time, many achievements have been made in the research of parallelization in the field of Web. The RiverTrail project based on OpenCL, proposed by IntelLabs and implemented on Firefox, adds parallel functions by extending the JavaScript language itself. In March 2014, WebCL Standard 1.0 released WebCL is an extension set of OpenCL on Web. Allow developers direct access to GPU, multi-core CPU and other multi-core devices for large-scale parallel programming. This paper designs and implements the basic module of WebCL based on Blink engine, uses the parallel computing interface provided in WebCL standard and modern multi-core CPU GPU to increase the parallelization ability of JavaScript, and accelerates Web applications, especially computationally intensive Web applications. Therefore, the core of the solution proposed in this paper is the design and implementation of WebCL infrastructure module based on Blink engine. This paper first introduces the language characteristics of JavaScript and the method of parallel programming. At the same time, introduces the Crosswalk and Blink engine. Then, this paper uses Crosswalk as the carrier to implement the basic modules specified in the WebCL standard by adding WebCL modules to the Blink engine. In the module, OpenCL is used to realize the corresponding API stipulated by the WebCL standard, and the WebCL module is bound to the V8 engine by the way of WebIDL. At the same time, use WebCL conformance tests to test the correctness of each interface to ensure that the implementation of each interface can pass the test. Then, according to the implemented WebCL standard, the performance test is carried out through the actual computationally intensive Web application, and the effect of data scale and the degree of parallelism of the program itself on the parallelization performance of Web applications is analyzed in detail. Finally, the application scenario of parallel system implemented in this paper is given. The JavaScript parallelization system based on Blink and WebCL can significantly improve the running speed of computation-intensive Web applications and improve the user experience. It has a high research and practical value.
【学位授予单位】:中山大学
【学位级别】:硕士
【学位授予年份】:2015
【分类号】:TP393.09

【相似文献】

相关期刊论文 前10条

1 杜皎,李国辉,荆继武;一种防火墙平台的内核引导安全机制[J];计算机工程;2005年02期

2 潘永才;张鹏;余小娟;陈俊琪;程鼎;;基于X86平台的简单多任务内核的分析与实现[J];物联网技术;2013年12期

3 赵炫;徐学雷;邢建伟;刘宏;;嵌入式VTL中应用程序与内核通讯的设计[J];微计算机信息;2007年11期

4 崔大权,张景学,王圣;利用远程纠错跟踪Linux TCP/IP内核源代码[J];沈阳师范大学学报(自然科学版);2003年02期

5 喻锋荣;Linux内核解读入门[J];软件工程师;2000年07期

6 苑勋,董傲霜,王琰;Linux内核与内存关系的几个问题的探讨[J];小型微型计算机系统;2002年06期

7 张磊,王学慧;Linux内核调试技术[J];计算机工程;2003年10期

8 王亚军;;基于嵌入式应用修改Linux内核的技术分析[J];武警学院学报;2007年12期

9 徐炜;;Linux运行前探秘之一—内核编译及引导[J];电脑编程技巧与维护;2011年11期

10 陈刚,卢显良;基于Linux-2.6内核模块程序设计[J];福建电脑;2004年06期

相关重要报纸文章 前3条

1 本报记者 侯捷宁;证券业协会规范三板 主办报价券商内核程序[N];证券日报;2008年

2 ;减少内核空循环 Linux节能化繁为简[N];网络世界;2007年

3 证券时报记者 杨冬;强化内核制度 赢得良好市场口碑[N];证券时报;2011年

相关硕士学位论文 前10条

1 徐志诚;基于CortexM3+ucosⅢ内核量化分析与硬件探针系统设计[D];电子科技大学;2014年

2 邓渊浩;基于硬件虚拟化的内核漏洞监测系统的设计和实现[D];江苏大学;2015年

3 唐成;基于Blink的WebCL基础模块的设计和实现[D];中山大学;2015年

4 杜传业;嵌入式Linux内核解析[D];河北工业大学;2007年

5 侯红君;Linux 0.11内核研究与内核编程实践[D];天津大学;2007年

6 陈丽波;IA-64 Linux内核跟踪机制研究与实现[D];国防科学技术大学;2004年

7 李彬;基于应用程序的嵌入式Linux内核自动裁剪[D];东南大学;2006年

8 陈斌斌;Kylin内核完整性防护技术研究[D];国防科学技术大学;2008年

9 黄凌碧;嵌入式Linux内核调试技术的研究与实现[D];哈尔滨理工大学;2006年

10 宋柏林;Linux下几种内核级rootkits技术研究[D];电子科技大学;2007年



本文编号:1953001

资料下载
论文发表

本文链接:https://www.wllwen.com/guanlilunwen/ydhl/1953001.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户eaeee***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com