NS2的多核多线程并行化设计与开发
本文关键词:NS2的多核多线程并行化设计与开发,由笔耕文化传播整理发布。
【摘要】:随着多核处理器的出现和迅速发展,为了更好利用多核体系结构提高性能,将以前经典的串行程序并行化,以及研究面向并行化程序的多线程任务调度问题,具有重要的意义。NS2是一种典型的基于单线程设计的网络仿真器。在进行大规模的网络仿真时,单核单线程处理器难以满足网络仿真对巨大计算能力的要求,网络仿真器的运行效率十分低下。可以利用多核多线程相关技术来提高NS2事件调度效率,减少大规模网络仿真所花费的时间。论文首先提出对典型网络仿真软件NS2的多核多线程设计方案,并使用OpenMP技术来实现。对NS2对象类中的事件类进行扩展,调度器类中添加事件池设计;接着重点针对NS2调度器中原有串行事件调度和派发机制进行并行化改造,分别添加了调度器并行取事件模块、并行事件识别模块以及并行派发事件模块,来实现调度器对事件的并行处理;最后对并行方案进行正确性验证和冲突控制。然后本文对并行化改造后的NS2并行执行时所涉及的多线程任务调度的问题进行抽象,从性能优化的角度提出一种面向多核平台的多线程划分及负载均衡任务调度策略。根据测试出各任务块的粒度值,对一个任务是否适合多线程并行进行判断。对于适合多线程并行的任务,结合任务块粒度值,根据一定条件分成两种情况。针对分解出的任务块均匀这种情况,使用一般静态调度策略。而针对分解出的任务块不均匀时的情况,设计出一种启发式调度算法。最后基于本文提出的NS2多核多线程设计方案,进行仿真实验验证和加速性能测试。实验分为小规模场景实验以及规模化实验,验证了并行改造方案的正确性以及较显著的加速效果。
【关键词】:NS2 多核多线程 OpenMP 任务调度 负载均衡
【学位授予单位】:南京邮电大学
【学位级别】:硕士
【学位授予年份】:2016
【分类号】:TP332
【目录】:
- 摘要4-5
- Abstract5-8
- 第一章 绪论8-11
- 1.1 课题背景8-9
- 1.2 课题来源及论文的主要内容9
- 1.3 论文的组织结构9-11
- 第二章 多核多线程技术及NS2介绍11-25
- 2.1 多核计算机介绍11-13
- 2.1.1 单核CPU发展遭遇瓶颈11
- 2.1.2 多核CPU的出现11-12
- 2.1.3 多核CPU的硬件结构12
- 2.1.4 多核处理器带来的改变12-13
- 2.2 进程与线程13-15
- 2.2.1 进程13-14
- 2.2.2 线程14
- 2.2.3 多线程14-15
- 2.3 OpenMP多线程编程技术15-19
- 2.3.1 OpenMP技术简介15-17
- 2.3.2 OpenMP指令及库函数17-19
- 2.3.3 OpenMP中任务调度方式19
- 2.4 NS2介绍19-24
- 2.4.1 NS2基本简介19-21
- 2.4.2 NS2的层次结构21
- 2.4.3 NS2中调度器与事件21-23
- 2.4.4 NS2仿真器的模拟机制及仿真步骤23-24
- 2.5 本章小结24-25
- 第三章 NS2的多核多线程并行化设计25-41
- 3.1 并行任务分析25-27
- 3.1.1 利用工具进行分析26-27
- 3.1.2 离散事件网络仿真并行分析27
- 3.2 对象类设计27-30
- 3.2.1 事件类设计27-29
- 3.2.2 调度器类设计29-30
- 3.3 并行调度功能设计30-36
- 3.3.1 NS2的串行调度架构30-32
- 3.3.2 并行调度功能设计32-36
- 3.4 正确性验证及冲突控制36-40
- 3.4.1 分组争用方案37-39
- 3.4.2 事件安排互斥控制39-40
- 3.5 本章小结40-41
- 第四章 面向并行化NS2的多线程划分及负载均衡任务调度策略41-51
- 4.1 任务调度41-43
- 4.1.1 任务调度技术41-43
- 4.2 负载均衡43-45
- 4.2.1 负载均衡介绍43-44
- 4.2.2 负载均衡的实现方法44-45
- 4.3 面向多核平台的多线程划分及静态均衡调度策略45-50
- 4.3.1 主要解决问题45
- 4.3.2 多线程任务分配模型建立45-46
- 4.3.3 算法执行过程46-50
- 4.3.4 策略有益分析50
- 4.4 本章小结50-51
- 第五章 NS2的多核多线程并行化实现验证与性能测试51-60
- 5.1 实验测试超线程对NS2并行仿真实验的影响51-53
- 5.1.1 超线程简介51
- 5.1.2 实验测试51-53
- 5.2 NS2的多核多线程并行化实现验证与性能测试53-59
- 5.2.1 小规模场景实验54-56
- 5.2.2 规模化实验56-59
- 5.3 本章小结59-60
- 第六章 总结与展望60-62
- 6.1 总结60-61
- 6.2 研究展望61-62
- 参考文献62-64
- 附录1 攻读硕士学位期间申请的专利64-65
- 附录2 攻读硕士学位期间参加的科研项目65-66
- 致谢66
【相似文献】
中国期刊全文数据库 前10条
1 张利霞;多线程的实现方法[J];河南师范大学学报(自然科学版);2001年02期
2 赵海延;多线程及其实现方法[J];武汉工程职业技术学院学报;2002年03期
3 李学坤;数据采集处理系统中多线程的效率研究[J];工业控制计算机;2003年04期
4 徐洪斌,苏铁熊,董小瑞;多线程技术及其实现[J];山西电子技术;2003年03期
5 李文亮,闫宏印;多线程技术及其在多媒体CAI软件中的应用[J];太原理工大学学报;2003年05期
6 周亦敏,张生;集散系统中基于多线程的多机串行通信实现[J];上海理工大学学报;2003年04期
7 高正光,李启炎;一种多线程并发环境下的对象缓存模型[J];计算机工程;2005年22期
8 王世强;曹英;王宏;;基于多线程的肌电信号实时采集与分析系统[J];仪器仪表学报;2006年S2期
9 李婷;虞钢;;脉搏检测分析系统中基于多线程的高速串口通信[J];计算机应用与软件;2007年03期
10 张跃平;;多线程设计中的克隆技术[J];信息技术;2007年04期
中国重要会议论文全文数据库 前10条
1 谭小彬;孔德光;奚宏生;;多线程程序时序的统计分析[A];第二十七届中国控制会议论文集[C];2008年
2 贾韶旭;潘锦;;多线程技术在探地雷达中的应用[A];2007年全国微波毫米波会议论文集(下册)[C];2007年
3 胡杏;胡瑜;李晓维;;基于存储级并行的同时多线程电压紧急容错技术[A];第十四届全国容错计算学术会议(CFTC'2011)论文集[C];2011年
4 周大刚;龙昭华;;多线程在无线网络处理中的应用[A];’2004计算机应用技术交流会议论文集[C];2004年
5 李s,
本文编号:496289
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/496289.html