发明名称 一种基于InfiniBand实时调度海量高精度三维场景数据的方法
摘要 本发明涉及计算机应用技术和计算机视觉领域,具体涉及一种基于InfiniBand实时调度海量高精度三维场景数据的方法,包括创建RAID磁盘阵列,将磁盘阵列柜用RAID卡连接到服务器上,使用InfiniBand网卡和网络交换机搭建好InfiniBand网络,将服务器作为节点加入到InfiniBand网络中,使用地形生成软件和源数据生成地形子模块,并将地形存放到服务器上;将所有准备好的数据和软硬件组合到一起构建成地形服务器;使用InfiniBand卡和光纤将IG主机加入到InfiniBand网络中等步骤。本发明确保系统稳定高效地运行,并在此基础上提出一种基于视锥体和时间优先级的数据预测调度算法,根据视锥体裁减预判和数据块在内存中的存在时间进行地形数据在内存中的调度与释放,从而减少系统内存消耗,提高数据调度效率。
申请公布号 CN103903295B 申请公布日期 2017.01.11
申请号 CN201410136041.3 申请日期 2014.04.04
申请人 四川川大智胜软件股份有限公司;四川大学 发明人 戈文一;季玉龙;杨善敏;李绥彪;万宇;冯仕财;汪归归;宋歌;谭诗翰
分类号 G06T15/00(2011.01)I 主分类号 G06T15/00(2011.01)I
代理机构 成都信博专利代理有限责任公司 51200 代理人 卓仲阳
主权项 一种基于InfiniBand实时调度海量高精度三维场景数据的方法,其特征在于:包括以下步骤:步骤一,准备好所有的硬件,包括服务器、IG主机、RAID阵列柜、RAID卡、InfiniBand网卡、InfiniBand网络交换机、光纤线以及视景主程序、地形生成软件和地形源数据;步骤二,创建RAID磁盘阵列,将磁盘阵列柜用RAID卡连接到服务器上,使用InfiniBand网卡和网络交换机搭建好InfiniBand网络,将服务器作为节点加入到InfiniBand网络中,使用地形生成软件和源数据生成地形,从而构成地形服务器;步骤三,使用InfiniBand网卡和光纤将IG主机加入到InfiniBand网络中;步骤四,在视景主程序中添加基于InfiniBand网络调度地形子模块,地形子模块负责从地形服务器中通过大规模地形调度算法将数据提取到IG中进行渲染;所述地形子模块中数据调度的方法是:步骤一,针对场景数据金字塔的四叉树结构,数据调度以基本地形块为单位,根据LOD思想完成地形数据的实时内外存交互;步骤二,创建一个独立的线程用于数据在内存中的调度与释放,所述数据调度分为数据调度命令响应与内存管理;步骤三,所创建的独立线程和主线程通过互斥机制确保系统安全稳定地运行;所述数据调度分为基于视锥体的数据预测调度和基于时间优先级的数据预测调度,其中所述基于视锥体的数据预测调度是:在当前视锥体的基础上进行一个冗余扩充,形成一个缓存视锥体,所述缓存视锥体包括了随后若干帧视点可能出现的位置的可见区域数据,且数据按金字塔分层分布,金字塔从顶部至底部可见区域逐层减少,当视点发生改变时,所述缓存视锥体也随之更新,地形数据索引队列的内容根据所述缓存视锥体实时改变,并指引地形块缓存进行具体地形块的载入和释放;所述基于时间优先级的数据预测调度方法是:将“缓存视锥体”内的地形块赋予一个“内存驻留时间”,地形块的“内存驻留时间”在其被载入内存时被初始化,而后随时间的流逝而不断减少,并且当前实际视锥体的位置越远“内存驻留时间”越小,位置越近“内存驻留时间越大”,若在视锥体内,则“内存驻留时间”不随时间变化;当地形块的“内存驻留时间”为0或超出“缓存视锥体”时,则从内存中释放假设地形块的初始“内存驻留时间”为life<sub>0</sub>,初始时刻为t<sub>0</sub>,该地形块在某时刻t的“内存驻留时间”计算公式如下:life=life<sub>0</sub>‑k*(t‑t<sub>0</sub>)*d其中,此计算公式中的k为系数,d为地形块至视锥体的距离即d为地形块至视点的距离;通过上述方法将地形块缓存中长期未激活的节点从内存中剔除后,可根据需要将视锥体范围内的高精度地形块载入内存,以提高地形的视觉效果。
地址 610045 四川省成都市武侯区武科东一路七号