基于Node.js的共享持久内存并行编程模型
发布时间:2021-05-17 07:38
JavaScript是一门被广泛应用于客户端浏览器的轻量级脚本语言,自发明以来,JavaScript发展迅速,目前几乎所有的网页都有使用JavaScript。Node.js是JavaScript运行时环境,使得JavaScript可以被用以在服务器端开发规模化的网络应用。然而,由于JavaScript被设计为单线程语言,Node.js和底层的V8虚拟机也是单线程,因此不支持并行编程,这使得开发者想要提升应用的性能变得困难。与此同时,持久内存作为一种新的内存和存储结构,在服务端应用开发方面展现出了积极的前景。目前,脚本语言基于持久内存的并行编程支持相关的研究工作还比较少。在本文中,我们提出一个叫SPMP的并行编程模型,它是在Node.js下共享持久内存的JavaScript支持。在SPMP模型中,我们首先设计实现了一个PersistentArrayBuffer(PAB)对象,其功能类似Node中的ArrayBuffer对象,以二进制数据缓冲区的方式访问和管理内存。不同之处在于,PAB由于访问机制的设计,可以用于管理持久内存。在使用SPMP处理并发任务时,每个进程需要在自己的地址空间中维护...
【文章来源】:上海交通大学上海市 211工程院校 985工程院校 教育部直属院校
【文章页数】:64 页
【学位级别】:硕士
【文章目录】:
摘要
abstract
第一章 绪论
1.1 选题背景
1.2 研究目的和意义
1.3 论文主要研究内容
1.4 论文贡献
1.5 文章组织结构
第二章 相关技术和研究工作
2.1 V8 引擎和Node.js
2.2 持久内存开发工具包(PMDK)
2.3 Web Worker
2.4 通用消息(GEMs)
2.5 拓展内存语义(EMS)
2.6 本章总结
第三章 共享持久内存并行编程模型设计
3.1 设计动机
3.2 持久内存对象
3.3 共享内存与进程间通信机制
3.4 并发控制
3.5 本章总结
第四章 共享持久内存并行编程模型实现
4.1 PersistentArrayBuffer对象
4.1.1 PAB对象实现
4.1.2 PAB应用
4.2 多进程与内存共享
4.2.1 进程生成和内存管理
4.2.2 共享内存和JS对象
4.2.3 进程间通信
4.3 BSP与负载均衡
4.3.1 整体同步并行计算模型(BSP)
4.3.2 负载均衡并行策略
4.4 并发控制
4.5 本章总结
第五章 实验与分析
5.1 实验设计
5.1.1 实验内容和文本集
5.1.2 实验模型和环境配置
5.2 SPMP并行编程支持
5.3 并行策略对比
5.4 SPMP与 EMS对比实验
5.4.1 数据流实验
5.4.2 词统计实验
5.5 本章总结
第六章 全文总结
6.1 SPMP模型设计工作总结
6.2 不足之处
6.3 未来展望
参考文献
致谢
攻读学位期间发表的学术论文
攻读学位期间参与的项目
本文编号:3191375
【文章来源】:上海交通大学上海市 211工程院校 985工程院校 教育部直属院校
【文章页数】:64 页
【学位级别】:硕士
【文章目录】:
摘要
abstract
第一章 绪论
1.1 选题背景
1.2 研究目的和意义
1.3 论文主要研究内容
1.4 论文贡献
1.5 文章组织结构
第二章 相关技术和研究工作
2.1 V8 引擎和Node.js
2.2 持久内存开发工具包(PMDK)
2.3 Web Worker
2.4 通用消息(GEMs)
2.5 拓展内存语义(EMS)
2.6 本章总结
第三章 共享持久内存并行编程模型设计
3.1 设计动机
3.2 持久内存对象
3.3 共享内存与进程间通信机制
3.4 并发控制
3.5 本章总结
第四章 共享持久内存并行编程模型实现
4.1 PersistentArrayBuffer对象
4.1.1 PAB对象实现
4.1.2 PAB应用
4.2 多进程与内存共享
4.2.1 进程生成和内存管理
4.2.2 共享内存和JS对象
4.2.3 进程间通信
4.3 BSP与负载均衡
4.3.1 整体同步并行计算模型(BSP)
4.3.2 负载均衡并行策略
4.4 并发控制
4.5 本章总结
第五章 实验与分析
5.1 实验设计
5.1.1 实验内容和文本集
5.1.2 实验模型和环境配置
5.2 SPMP并行编程支持
5.3 并行策略对比
5.4 SPMP与 EMS对比实验
5.4.1 数据流实验
5.4.2 词统计实验
5.5 本章总结
第六章 全文总结
6.1 SPMP模型设计工作总结
6.2 不足之处
6.3 未来展望
参考文献
致谢
攻读学位期间发表的学术论文
攻读学位期间参与的项目
本文编号:3191375
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3191375.html