论文部分内容阅读
软件仿真是一种不可或缺的辅助无线传感器网络节点软件开发的方法,对节点发送的数据包在无线信道中传输的模拟是仿真中的关键因素之一。受限于计算和存储密集的内在特性,现有基于CPU计算架构的仿真器难以获得高效和线性扩展的执行性能。 NVIDIA的GPU+CUDA计算体系是当前蓬勃发展的并行计算平台。本文通过调研其在常规无线网络信道仿真中的应用和分析无线传感器网络信道仿真,提出并实现了一个基于该计算体系的无线传感器网络并行信道仿真平台—CU-Simulator,以提升仿真执行的性能,高效率地支持大规模网络持续仿真。 本文首先实现了并行的节点位置模拟,包括对节点初始部署和节点移动的仿真支持。该部分仿真组合CUDA众多线程并行、CUDA并行随机数和位运算,运算简洁高效。 鉴于节点间距离是影响无线通信的重要因素,本文研发了一个新颖的数据结构—CUDA四分树群。它充分利用GPU片上存储的高速访存特性,依据空间相似度组织网内节点,便于以较低的开销并行为网内节点探测其邻近节点。作为加速数据结构,它在仿真中加速判定发送数据包的节点。 根据对CUDA线程并行模型的分析,本文提出并建立了基于搜索的CUDA并行无线传感器网络信道仿真引擎。完全不同于传统无线信道仿真,该引擎以每个CUDA线程持有一个节点并作为数据包接收节点,利用CUDA四分树群查找其周围潜在发包节点,通过逐一检查收包节点与每个潜在发包节点之间的通信判定节点的数据包接收情况。该引擎并行模拟和检测一小时间片内所有节点的数据包接收情况,反复调用该引擎即可实现对无线传感器网络持续工作的仿真。该引擎充分利用了GPU强大的计算能力,仅需要很低的存储开销,可支持超大规模网络。 为了获得较好的仿真精确性,本文提出在CU-Simulator中采用基于统计的无线传感器网络信道模型模拟节点之间的无线通信。该类基于实测和分析的数学表达既有很高的可信度,又具有较低或中等的计算开销,且通过参数配置或定制模型可模拟多种场景。本文实现了一个涵盖两个典型频段的信道模型。 本文采用配有Intel至强四核CPU的HP Z800工作站和NVIDIA专用于通用计算的Tesla C2070卡搭建测试环境,实验评估仿真平台性能。结果表明,本文提出的仿真平台以高达452.07倍的加速比远胜于相应CPU实现,并超线性扩展于网内节点数目,表现出了良好的性能优势。